2013-12-14 4 views
0

Я использую метод = "GET" в моей HTML-форме. Есть ли способ получить имя временного файла из папки temp (в Linux) и перенести его в какую-то папку с самообслуживанием? Я пробовал $ _FILES ['файл'] ['tmp_name'], но он не работает с методом get. Для извлечения значений из строки запроса я использовал метод $ _GET. Но он не получает имя файла temp.Как получить загруженное имя файла из папки temp в php?

+0

Прочтите руководство по [файлам] (http://www.php.net/manual/en/reserved.variables.files.php) – Michel

+0

Я использую $ _FILES, но его значение не отображается. – goodie

+0

Плюс Я использую php5. – goodie

ответ

0

загрузки файла не возможно с помощью метода GET, так что вы должны использовать Метод POST.

Это не проблема с PHP. RFC 1867 определяет форму enctype «application/x-www-form-urlencoded» при отправке файлов. Но настройка enctype возможна только при использовании POST. Кроме того, файлы могут быть очень большими, поэтому строка запроса URL будет слишком длинной.

Фактически, ваш браузер никогда не будет отправлять какие-либо файлы на сервер, если вы используете GET. Он обрабатывает поле ввода файла как нормальное текстовое поле и отправляет имя файла.

+0

OK. Если я использую метод post, есть ли способ извлечь значения из строки запроса? Потому что, когда я использовал метод POST, я не смог этого сделать. – goodie

+0

Если они действительно отправлены в строке запроса, вы также можете получить к ним доступ через $ _GET ['name']. Если вы изменили тип формы на POST и вы отправляете текстовые входы таким образом, они больше не доступны в $ _GET, а в $ _POST. Вы можете попробовать попробовать $ _REQUEST ['name'], если вы не уверены. –

+0

Если я не уверен, что ??? – goodie

0

Вы установили в своей форме атрибут enctype = "multipart/form-data"? Если нет, нет никаких данных в $ _FILES

Тем не менее, рекомендуются использовать POST для вставки и GET для выборки данных

+0

Да. У меня есть .... – goodie

+0

Я знаю, что лучше использовать пост, но поскольку мне нужно прочитать строку запроса, которая выполняется через $ _GET. Вот почему я использую GET. – goodie

+0

Зачем вам нужен метод GET в вашей форме для получения данных? Вы можете получить строку запроса с помощью GET и отправить свои данные с помощью POST. Думаю, вам не нужна форма для извлечения данных. –

Смежные вопросы