2015-01-28 11 views
9

ReSTful webservice kullanıyorum. Tek bir işlevle (PHP) birden çok fotoğraf yüklüyorum.Postacı ReSTful web servisinde birden fazla dosya nasıl gönderilir?

ben yüklenmesine olan dosya sayısını saymak için $num_files = count($_FILES['myfile']['name']) kullandık ama bu her zaman 1 verir:

Image

Ben $_FILES['myfile']['name'] veya $_FILES son görüntüyü döndürür yazdırdığınızda.

Her seferinde birden fazla dosya göndermek için herhangi bir ayar yapacağımı düşünüyor muyum?

<?php 
if($result=="success") 
{ 
    $num_files = count($_FILES['myfile']['name']); 
    Zend_Debug::dump($num_files); 
    die; 
    for($i=0; $i < $num_files; $i++) 
    { 
     $name = $_FILES["myfile"]["name"][$i]; 
     $temp_path = $_FILES['myfile']['tmp_name'][$i]; 
     $image_name = Helper_common::getUniqueNameForFile($name); 

     echo $image_name; 
     die; 
     // Set the upload folder path 
     $target_path = $originalDirecory."/"; 


     // Set upload image path 
     $image_upload_path = $target_path.$image_name; 
     move_uploaded_file($temp_path, $image_upload_path); 

     //if(move_uploaded_file($temp_path, $image_upload_path)) 
     //{ 
     // Set 800*800 popup thumbnail... 
     // Set popup directory... 
     $thumbnail_directory=$popUpDirectory."/"; 
     // Set thumbnail name... 
     $thumb_name1=$thumbnail_directory.'thumbnail_'.$image_name; 
     // Set width and height of the thumbnail... 
     $thumb_width=800; 
     $thumb_height=800; 
     $thumb1=Helper_common::generateThumbnail($image_upload_path, $thumb_name1, $thumb_width, $thumb_height); 

     //if($thumb) 
     //{ 
      // Set 435*333 thumbnail... 
      // Set thumbnail directory... 
      $thumbnail_directory=$wallDirecory."/"; 
      // Set thumbnail name... 
      $thumb_name2=$thumbnail_directory.'thumbnail_'.$image_name; 
      // Set width and height of the thumbnail... 
      $thumb_width=435; 
      $thumb_height=435; 
      $thumb2=Helper_common::generateThumbnail($image_upload_path, $thumb_name2, $thumb_width, $thumb_height); 

      //if($thumb) 
      //{ 
       // Set 176*176 thumbnail... 
       // Set thumbnail directory... 
       $thumbnail_directory=$galleryDirectory."/"; 
       // Set thumbnail name... 
       $thumb_name3=$thumbnail_directory.'thumbnail_'.$image_name; 
       // Set width and height of the thumbnail... 
       $thumb_width=176; 
       $thumb_height=176; 
       $thumb_smart_resize_3 = Helper_ImageResizer::smart_resize_image($image_upload_path, NULL, $thumb_width, $thumb_height, false, $thumb_name3, false); 
       $thumb3=Helper_common::generateThumbnail($image_upload_path, $thumb_name3, $thumb_width, $thumb_height); 
      //if($thumb) 
      //{ 
       $profile_thumb=$thumb3; 
       // Set 131*131 thumbnail... 
       // Set thumbnail directory.... 
       $thumbnail_directory = $thumbnailsDirectory."/"; 
       // Set thumbnail name.... 
       $thumb_name4 = $thumbnail_directory.'thumbnail_'.$image_name; 
       $thumb_width=131; 
       $thumb_height=131; 
       $thumb_smart_resize_4=Helper_ImageResizer::smart_resize_image($image_upload_path, NULL, $thumb_width, $thumb_height, false, $thumb_name4, false); 
       $thumb4=Helper_common::generateThumbnail($image_upload_path, $thumb_name4, $thumb_width, $thumb_height); 

       } 
+0

kıvırcık parantez kadar gereken herhangi bir veri dizisi – Veerendra

cevap

22

Çözümüm var. böyle myFile bir dizi yapmak gerekir: dosyam [] :)

+2

için tam kod sonrası misiniz eksik [] ile bahsetmek istiyorum, sizin durumunuzda postacıda olduğu gibi dizi [] ile birden fazla dosya göndermek zorundasınız, bunu anahtar parametresinde belirtmeliyim myfile [] –

+0

takdir, benim günü kurtarmak size bölüm – user3470929

+0

Benim için de çalıştın, teşekkürler! –