Несколько циклов загрузки - PullRequest
0 голосов
/ 21 декабря 2011

По какой-то причине я должен поместить все поля ввода в массив. Поскольку вход динамически добавляется до пользователя.

Когда пользователь нажимает кнопку «Добавить», генерируется следующее изображение для загрузки

<input type="file" name="product['+n+'][gthumbnail][]"  />

Но я понятия не имею, как зациклить доступный массив (заполнен) . Я даже не могу сосчитать размер массива. И это мой рабочий код. Надеюсь каждый эксперт может указать на ошибку, которую я совершил

//loop for image file upload
foreach($product as $productcount){

....
....
....

    //this is what i have now ,and it is not working,error saying the gthumbnail is undefined
    for($i=0;$i<sizeof($_FILES['gthumbnail']);$i++){

        $m=uploadFile($_FILES['gthumbnail'][$i]);

    }


}//End of product loop

print_r ($ FILES)

Array ( 
[product] => Array ( [name] => Array ( [1] => Array ( [thumbnail] => [gthumbnail] => Array ( [0] => [1] => [2] => ) [gphoto] => Array ( [0] => [1] => [2] => ) ) ) [type] => Array ( [1] => Array ( [thumbnail] => [gthumbnail] => Array ( [0] => [1] => [2] => ) [gphoto] => Array ( [0] => [1] => [2] => ) ) ) [tmp_name] => Array ( [1] => Array ( [thumbnail] => [gthumbnail] => Array ( [0] => [1] => [2] => ) [gphoto] => Array ( [0] => [1] => [2] => ) ) ) [error] => Array ( [1] => Array ( [thumbnail] => 4 [gthumbnail] => Array ( [0] => 4 [1] => 4 [2] => 4 ) [gphoto] => Array ( [0] => 4 [1] => 4 [2] => 4 ) ) ) [size] => Array ( [1] => Array ( [thumbnail] => 0 [gthumbnail] => Array ( [0] => 0 [1] => 0 [2] => 0 ) [gphoto] => Array ( [0] => 0 [1] => 0 [2] => 0 ) ) ) ) )

1 Ответ

0 голосов
/ 21 декабря 2011

почему бы вам не использовать массив с одним измерением вместо name="product['+n+'][gthumbnail][]".Он выглядит очень сложным.

может быть следующим, что облегчит вашу работу,

 <form action="file-upload.php" method="post" enctype="multipart/form-data">
  Send these files:<br />
  <input name="userfile[]" type="file" /><br />
  <input name="userfile[]" type="file" /><br />
  <input type="submit" value="Send files" />
</form>

При отправке вышеуказанной формы массивы $_FILES['userfile'], $_FILES['userfile']['name'] и $_FILES['userfile']['size']быть инициализированным.

Когда register_globals включен, глобальные переменные для загруженных файлов также инициализируются.Каждый из них будет числовым индексированным массивом соответствующих значений для отправленных файлов.

Например, предположим, что имена файлов /home/test/review.html и / home / test / xwp.вне представлены.В этом случае $ _FILES ['userfile'] ['name'] [0] будет содержать значение review.html, а $ _FILES ['userfile'] ['name'] [1] будет содержать значение xwp.out,Аналогично, $ _FILES ['userfile'] ['size'] [0] будет содержать размер файла review.html и т. Д.

$_FILES['userfile']['name'][0], $_FILES['userfile']['tmp_name'][0], $_FILES['userfile']['size'][0], and $_FILES['userfile']['type'][0] are also set.
...