$ _FILES пуст при попытке загрузки файла

Это сводит меня с ума. Я пытаюсь выяснить, как загрузить файл. У меня есть два очень простых файла, но он, похоже, не работает. Это первый файл, который позволяет пользователю выбирать файл:

<html> <head> <title>File Upload Form</title> </head> <body> This form allows you to upload a file to the server.<br> <form action="getfile.php" method="post"><br> Type (or select) Filename: <input type="file" name="uploadFile"> <input type="submit" value="Upload File"> </form> </body> </html> </code> 

Второй – это файл php, который обрабатывает его:

 <html> <head> <title>Process Uploaded File</title> </head> <body> <?php print_r($_FILES); print "<P>\n"; move_uploaded_file ($_FILES['uploadFile'] ['tmp_name'], "../blimages/site/7337/{$_FILES['uploadFile'] ['name']}") ?> </body> </html> 

Поскольку – за исключением print_r – я вытащил их из учебника веб-сайта о том, как сделать загрузку файла, я думаю, что эти файлы в порядке.

print_r($FILES) возвращает полностью пустой массив.

Я также проверил php.ini . Разрешения файлов разрешены, а максимальный размер – 2 М, который, как я предполагаю, составляет 2 мегабайта, что намного больше, чем файл, который я пытался загрузить.

Что еще может быть неправильно?

Благодаря,

Шон.

Related of "$ _FILES пуст при попытке загрузки файла"

Добавьте в свой тег form правильный атрибут enctype:

 <form action="getfile.php" method="post" enctype="multipart/form-data"> 

Это описано здесь: http://www.php.net/manual/en/features.file-upload.post-method.php

Кроме того, убедитесь, что между вашими скобками нет места при доступе к многомерным массивам:

 $_FILES['uploadFile']['tmp_name'] 

Вы shuold используете атрибут enctype="multipart/form-data" в теге формы .

Добавьте это в тег формы

ENCTYPE = "многочастному / форм-данных"