Вопрос по php, post – Удалить значение кнопки отправки из данных формы $ _POST PHP

1

Я использую этот цикл для печати всех данных формы $ _POST:

foreach($_POST as $name => $value) {
print "$name : $value<br>";
}

И в конце результата находится значение кнопки «Отправить» (submit: Edit), и это вызывает у меня ошибку, потому что в этом цикле foreac я добавляю данные в документ Excel$name is cell, $value is cell value так как убрать значение кнопки из списка?

if( $name == 'submit' ) { continue; } JJJ

Ваш Ответ

5   ответов
2

Как насчет

foreach($_POST as $name => $value) {
    if($name != "submit"){
        print "$name : $value<br>";
    }
}
4

Просто пропустите это сcontinue;

foreach($_POST as $name => $value) {
    if($name == "submit") continue;
    print "$name : $value<br>";
}
2

То, что вы делаете, не является хорошей практикой. В этом случае, передавая данные в электронную таблицу Excel, у вас вряд ли возникнут проблемы, тем не менее, это опасная привычка.

Вы спроектировали свои формы и дали имена каждому из ваших входных данных, чтобы заранее знать, какие индексы будет содержать ваш массив $ _POST. Вы должны явно ссылаться только на эти значения в вашем массиве $ _POST и проверять каждое из них по мере необходимости.

Не забывайте, что $ _POST исходит от пользователя и поэтому ненадежен. Дополнительные поля могут быть добавлены в массив $ _POST, и ваш код успешно их обработает.

Это может или не может быть проблемой в вашем коде, но вы должны хотя бы подумать об этом.

7

Вы можете просто сбросить его, прежде чем делать foreach:

unset($_POST['submit']);
6

Ваша кнопка отправки не должна иметьname атрибут в вашем HTML. Если у него нет имени, оно не будет присутствовать в данных POST.

Похожие вопросы