безопасность — php поймать должным образом

В php на стороне сервера как поймать сообщение из представления, а затем сделать бизнес-логику, я должен использовать приведенный ниже пример 2 — записать каждый ключ сообщения, если использовать 1 — может ли возникнуть какая-либо проблема безопасности?

1-

if (isset($_POST)) {
// do something use $_POST['..']
} else {
// denied
}

2-

if (isset($_POST['name']) && isset($_POST['password']) && isset($_POST['password_confirm']) ) {
// do something
} else {
// denied
}

3-

if ($_POST) {
}

0

Решение

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

0

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

Для предотвращения sql у вас есть два варианта

  • Избегание одинарных кавычек

  • Подготовленные заявления

Например, вы можете использовать для выхода вы можете использовать функцию «mysql_real_escape_string»

 if (isset($_POST)) {
$some_key = mysql_real_escape_string($_POST{'some_key'});
} else {
// denied
}

для подготовленных операторов вы должны использовать mysqli вместо od mysql, а затем выполнять такие операции с БД, как

     if($stmt = $mysqli -> prepare("SELECT priv FROM testUsers WHERE username=?
AND password=?")) {$stmt -> bind_param("ss", $_POST['user_key'], $_POST['pass_key']);$stmt -> execute();}
0

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