Задать вопрос
@rinaz22

Как защитится от sql инъекции?

Всем привет! Использую mysqli. Есть форма где пользователь вводит информацию. Как защититься, чтобы через эту форму не попала инъекция? Некоторые пишут экранировать запрос и потом добавить в БД. Поможет ли это?
  • Вопрос задан
  • 723 просмотра
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Stepik
    PHP (pro)
    2 недели
    Далее
Пригласить эксперта
Ответы на вопрос 2
@kr_ilya
Обязательно использовать PHP PDO (Материал 1, материал 2)
Ну и экранировать конечно же.
UPD:
Либо вообще избавляться от ненужных символов, в случаях когда они не нужны. (Например, когда в базу записывается только целое число, использовать intval());
Ответ написан
@Zubekas
Именно в mysql проще всего сделать инъекцию, не слушайте этих "умных", которые его предлагают. Mysqli как и PDO поддерживают prepare запросы, которые фильтруют входные параметры. Приведение к типу (intval) - хорошая практика, а так есть функция mysqli_escape_string которая экранирует запрос
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы