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

Как правильно делать подготовленные запросы?

Хотел бы узнать правильно ли сделан запрос? И я так понял это 100% защита от sql инъекций?
$email = $_POST['r_email'];
$check_email = $db->prepare("SELECT * FROM `users` WHERE `email` LIKE ?"); 
$check_email->bind_param('s', $email);
$check_email->execute();
$res_email = $check_email->get_result();
if ( $res_email->num_rows >= 1 ) {
    $errors[] = 'Данный Email занят!';
}
  • Вопрос задан
  • 66 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Immortal_pony
@Immortal_pony Куратор тега PHP
правильно ли сделан запрос?

Нет, для проверки по точному совпадению следует использовать оператор "=", а не "LIKE".

И я так понял это 100% защита от sql инъекций?

Нет, входные данные от пользователь всегда необходимо валидировать/очищать.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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