PHP — Цикл над полями формы и отображение пустых, а также

#php #forms

#php #формы

Вопрос:

Я заметил, что этот код в PHP 5.5 отображает только те поля, которые имеют значение. Он полностью пропускает пустые поля и не отображает их имя или значение:

 $msg = '';
foreach($_POST as $key => $value) {
  $msg .= $key . ': '; 
  if (is_array($value)) {
    foreach($value as $arr_value){
        $msg .= $arr_value . "; ";
    }
  } else {
    $msg .= $value;
  }
  $msg .= "n";
}
echo $msg;
  

Есть ли способ выполнить цикл, а также просмотреть имена полей, в которых не было введено значений при отправке формы? Спасибо.

Обновление: форма имеет это enctype . Может ли это иметь значение? enctype="multipart/form-data"

Комментарии:

1. вы, должно быть, что-то делаете с данными, поскольку по умолчанию по-прежнему отправляются пустые входные имена.

2. (Для каждого включенного поля отправляется значение.)

3. обновление после обновления: проверка займет меньше времени, чем спрашивать нас!

4. Можете ли вы опубликовать образец формы с полями, где это происходит? Если enctype есть multipart/form-data , может быть, вы ищете значения в $_FILES , а не $_POST ?

5. Я не был уверен, что все поля отправляются $_POST автоматически. Тогда это должен быть какой-то код в дюжине или более файлов JavaScript, написанных кем-то другим. Одним из них, вероятно, является удаление пустых полей. Спасибо за вашу помощь.