Флажки и загрузка изображений не в $ _POST var? - PullRequest
0 голосов
/ 17 августа 2010

У меня есть форма.

В форме есть загрузка изображений и ряд флажков.

Я пытаюсь перебрать переменные $ _POST для их обработки.

Когда я делаю

foreach($_POST as $key => $value){echo "$key $value"; }

Я получаю только 'input' $ _POST vars. Значения флажка и значение загрузки изображения не являются.

Я использую Code Igniter в качестве основы.

Есть идеи? Спасибо

Ответы [ 2 ]

4 голосов
/ 17 августа 2010

Вы должны получить любые отмеченные флажки как часть вашего $_POST массива.Не отмеченные флажки будут отсутствовать.

Загруженные изображения (из полей <input type="file" />) будут в массиве $_FILES, если и только если вы установите для своей формы enctype значение «multipart / form-data» (см. здесь ).

Чтобы начать работу с загрузкой файлов в PHP, есть отличный учебник по W3Schools .

С учетом HTML:

<input name="foobar" type="file" id="some_id_for_foobar" />

Если вы хотите получить имя файла загруженного файла (то есть имя файла, как оно было на ПК пользователя), вам нужно:

$name = $_FILES["foobar"]["name"];

Если вы хотитеимя загруженного файла на вашем сервере, вы хотите:

$location = $_FILES["file"]["tmp_name"];

Вы также можете найти документацию по move_uploaded_file полезной.

1 голос
/ 17 августа 2010
  1. Не отмеченные флажки никогда не будут присутствовать в POST (по проекту)
  2. Наиболее очевидная причина отсутствия файлов заключается в том, что вы не объявили форму для отправки файлов, например:
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...