Don_Donald
@Don_Donald

Экранирование символов?

Так не могу понять про безопасность PDO у них на сайте пишут
Подготовленные выражения - основная причина использовать PDO, поскольку это единственный безопасный способ выполнения SQL запросов, в которых участвуют переменные.
Как я понял что при использования плейсхолдеров не нужно экранировать поле ввода?
$pdo = new PDO('mysql:host=localhost;dbname=book', 'root', '');
$sql = $pdo->prepare('UPDATE books SET jokebook=?');
$sql->execute([$_POST['text']]);

<form action="" method="post">
    <input type="text" name="text">
    <input type="submit" name="submit">
</form>

Так вот при вводе в поле например <b>символ</b> в БД так и записывается, это нормально или нет?
  • Вопрос задан
  • 505 просмотров
Решения вопроса 1
unitby
@unitby
Конечно нормально. Что передаете то и записывается.
Экранируют спец символы чтобы их записать и чтобы избежать sql injection
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Silm
<b>символ</b>
А эта строка представляет какую то опасность для БД? Она абсолютно для нее безопасна.
Почитайте про SQL-inject.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы