@Dolbaldor-Bender

Действительно ли в PHP PDO Prepared statements не поддерживаются для операций INSERT/UPDATE?

Наткнулся на одно утверждение в выступлении Роман Шевченко (phpfaq.ru)
Презентация сама 2013.devconf.ru/data/2013/presentation/24.pdf
Там в одном слайде говорится:
Prepared statements не поддерживаются
• для идентификаторов
• для массивов в операторе IN()
• для массивов в запросах INSERT/UPDATE

Мои Вопросы:
  1. Можете расшифровать что имеется виду?
  2. Значит ли это что ...prepare() не спасает от SQL инъекций в запросах INSERT/UPDATE?
  3. Или это значит что не спасает "для массивов" ?
  4. О каких именно массивах идет речь и в каком месте они тут могут быть?
  • Вопрос задан
  • 271 просмотр
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
речь именно о массивах.
$ids = [1, 2, 3, 4];
$sql = 'SELECT * FROM table WHERE id IN (?)'; // нельзя
$sql = 'SELECT * FROM table WHERE id IN (?, ?, ?, ?)'; // можно
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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