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

Защищает ли expr()->literal() от SQL инъекции?

Делают фильтр и возникли сомнения насчет такого решения. Возможно ли SQL инъекция ? Если да то как решить.
$orStatements = $this->queryBuilder->expr()->orX();
foreach ($result as $value) {
    $orStatements->add(
        $this->queryBuilder->expr()->like('table.column', $this->queryBuilder->expr()->literal('%' . $value . '%'))
    );
}
$this->queryBuilder->andWhere($orStatements);
  • Вопрос задан
  • 468 просмотров
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@sl0
https://www.doctrine-project.org/projects/doctrine...

You are NOT safe from SQL injection when using user input with:

Expression API of Doctrine\ORM\QueryBuilder
Concatenating user input into DQL SELECT, UPDATE or DELETE statements or Native SQL.
Ответ написан
Ваш ответ на вопрос

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

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