Должен ли я очистить данные $ _POST, если они используются в операторе if?

Я реализую простую закрытую область на веб-сайте.
Доступ предоставляется при вводе правильного пароля. Пароль является общим, поэтому реальных учетных записей нет.
Я пытаюсь понять, если я пропускаю некоторую фильтрацию переменных, и если я должен очистить данные. Я почти уверен, что должен сделать это, но я не знаю, каков наилучший подход.

В моем коде у меня есть два места, где я использую данные из переменной $ _POST:

if(isset($_POST)&&$_POST['the_password']!="")
{
$my_password = $_POST['the_password'];
//Should i use something like this?
//$my_password = filter_input(INPUT_POST, 'the_password', FILTER_SANITIZE_STRING);
}

Второе место — где я использую переменную в операторе if:

if($a_password == $my_password)
{
//Query using the $a_password variable
}

В этой части кода $ a_password происходит из жестко закодированного запроса.

Является ли функция filter_input правильной? Я что-то пропустил?

1

Решение

Короткий ответ — нет; для if Скажите, ваш код в безопасности.

Однако, если вы отредактируете код позже, вы должны использовать подготовленные операторы в запросах к базе данных.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]