Я очень "отрывочный" человек о безопасности, но я тоже запутанный человек, чтобы понять, когда дело доходит до моей логики кодирования.
Каков BEST абсолютный метод BEST для выполнения подготовленных инструкций без необходимости связывать каждый параметр и делать что-либо еще. Потому что в ADO я мог бы просто сделать это
$stmt = $conn->execute("SELECT * FROM users WHERE username = $user AND password = $pass");
И тогда я мог бы легко собрать поле таким образом.
$stmt->fields['UID'];
Я не знаю, как это сделать в PDO, но если я собираюсь перейти к PDO, я бы сделал это безопасно.
И мой друг предложил мне сделать санитационную функцию? Как бы я это сделал и есть ли какие-либо готовые PHP-функции санитарии, которые были бы полезны?
Вам не нужно вручную связывать каждый параметр по одному. Это работает:
$stmt = $conn->prepare("SELECT * FROM users WHERE username = ? AND password = ?");
$stmt->execute(array($user, $pass));
$row = $stmt->fetch(PDO::FETCH_ASSOC);
echo $row['UID'];
mysql_real_escape_string