PHP Загрузка нескольких файлов распечатать пустой массив

Это моя форма:

<form action="?upload=1" method="post" enctype="multipart/form-data">
    <input name="file[]" type="file" multiple />
    <input type="submit" value="Upload"/>
</form>

Это мой php:

function make_upload() {
    print_r($_FILES);
}
if (isset($_GET["upload"]) && $_GET["upload"] == "1") {
    make_upload();
}

Если я попытаюсь выбрать только один файл, он покажет массив с этим файлом. Все в порядке.

Если я попытаюсь выбрать несколько файлов, отобразится Array ( ). Почему?


person MM PP    schedule 21.08.2014    source источник
comment
Попробуйте name="file[]", иначе PHP не распознает несколько параметров с одинаковым именем, которые он передал (но перезаписывает их все значением последнего).   -  person CBroe    schedule 21.08.2014
comment
@CBroe - Я пробовал. Проблема процветает.   -  person MM PP    schedule 21.08.2014
comment
Попробуйте распечатать содержимое $ _FILES поверх вашего скрипта, не делая его зависимым от значения GET - какая разница?   -  person CBroe    schedule 21.08.2014
comment
@CBroe - Пробовал ... Показывает _1 _...   -  person MM PP    schedule 21.08.2014
comment
Текущий код вроде хороший, проблем не обнаружил :)   -  person Krish R    schedule 21.08.2014


Ответы (2)


Ваш код хорош. Ошибок в нем не обнаружено.

Ваша проблема на 100% вызвана post_max_size.

Вам нужно увеличить его из вашего php.ini файла конфигурации.

Вы тоже можете увеличить upload_max_filesize.

person NETCreator Hosting    schedule 21.08.2014

Вам нужно использовать имя массива:

<input type='file' name='file[]' multiple>
person Mario R.C.    schedule 21.08.2014
comment
Спасибо, но проблема не исчезла. - person MM PP; 21.08.2014