Самый безопасный способ использования ПДО

0

Я очень "отрывочный" человек о безопасности, но я тоже запутанный человек, чтобы понять, когда дело доходит до моей логики кодирования.

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

$stmt = $conn->execute("SELECT * FROM users WHERE username = $user AND password = $pass");

И тогда я мог бы легко собрать поле таким образом.

$stmt->fields['UID'];

Я не знаю, как это сделать в PDO, но если я собираюсь перейти к PDO, я бы сделал это безопасно.

И мой друг предложил мне сделать санитационную функцию? Как бы я это сделал и есть ли какие-либо готовые PHP-функции санитарии, которые были бы полезны?

  • 0
    Вам не нужно очищать значения, если вы правильно используете подготовленные операторы. Прошли времена mysql_real_escape_string
  • 0
    Было бы разумно сделать и то и другое?
Показать ещё 1 комментарий
Теги:

1 ответ

1

Вам не нужно вручную связывать каждый параметр по одному. Это работает:

$stmt = $conn->prepare("SELECT * FROM users WHERE username = ? AND password = ?");
$stmt->execute(array($user, $pass));
$row = $stmt->fetch(PDO::FETCH_ASSOC);

echo $row['UID'];
  • 0
    Я сделал чистую функцию, которая использует filter_var, и сделал так, чтобы она очищала ввод и использовала вашу технику. Это умная идея?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню