Здравствуйте. Недавно начал изучать PDO Mysql. Столкнулся с таким вопросом, пишу файл личных страниц для пользователей, и делаю выборку из БД. Хотел уточнить, нужно ли фильтровать переменную $_GET['username'] или же достаточно прогнать через bindParam? Не получится ли SQL Inj? Спасибо)
$stmt = $db->prepare('SELECT `id`, `username` FROM `accounts` WHERE `username` = :username LIMIT 1');
$stmt->bindParam(':username', $_GET['username'], PDO::PARAM_STR);
$stmt->execute();
isset($_GET['username'])как минимум нужен, чтобы убедиться, что переменная вообще есть в наличии. – Visman Jan 11 '18 at 09:17id,usernameFROMaccountsWHEREusername= :username LIMIT 1'); $stmt->bindParam(':username', $username, PDO::PARAM_STR); $stmt->execute(); – VaDoSiQ Jan 11 '18 at 09:20if (! isset($_GET['username'])) {exit('Пошли на фиг! С новым годом!');}в начале скрипта, который использует$_GET['username']P.S. Прежде чем использовать какие-то данные пришедшие со стороны, нужно проверить их наличии как минимум. Как максимум - прогнать через валидатор. – Visman Jan 11 '18 at 09:29