2012-03-05 5 views
1

Этот код (в Doctrine2) защищен от SQL-инъекции? Или должно быть $ _GET ['значение'] дезинфицировано?Doctrine2 FindOneBy и SQL Injection

$ret = $entityManager->getRepository('SomeEntity')->findOneBy(array('ID' => $_GET['value'])); 

Спасибо

ответ

4

Она защищена от SQL-инъекций. Вы можете найти источник, чтобы узнать это, соответствующий код находится в Doctrine\ORM\Persisters -namespace, а также Doctrine\ORM\EntityRepository и Doctrine\ORM\UnitOfWork.

Ваши критерии преобразуются в заполнители, что также является рекомендуемым способом написания собственных запросов для защиты от SQL-инъекций.

Смежные вопросы