У меня есть форма с большим количеством переменных, которая затем отправляет электронное письмо, а не очищает каждое значение $_POST
с помощью filter_var($_POST['var'], FILTER_SANITIZE_STRING);
Я был за более простым фрагментом кода.Я придумал следующее, которое, кажется, работает, поскольку я считаю, что действие по умолчанию - FILTER_SANITIZE_STRING
, но мне просто было интересно, каково мнение людей, и если это не хорошая практика, возможно, вы могли бы сказать мне, почему?Значения $_POST
затем индивидуально внедряются в новые переменные, поэтому я бы использовал array_map только для начала, чтобы очистить все ...
$_POST = array_map('filter_var', $_POST);
Спасибо за ваши ответы, чтобы дать вам немногобольше информации, в основном:
У меня есть 20-30 полей ввода в форме, которые собираются, затем данные отображаются пользователю для проверки их ввода, переменные затем очищаются, пользователю затем отправляетсяэлектронная почта, а затем, наконец, детали вводятся в БД.
В настоящее время я выполняю санитарную обработку, используя вышеуказанную функцию array_map, а также FILTER_SANITIZE_EMAIL на адресе электронной почты перед отправкой электронного письма, а затем экранирую ввод с помощью mysql_real_escape_string () перед вставкой в базу данных.Не вдаваясь в подготовленные заявления и т. Д. Как вы думаете, я должен делать что-то дополнительно?еще раз спасибо!