【问题标题】:Doctrine2 FindOneBy and SQL InjectionDoctrine2 FindOneBy 和 SQL 注入
【发布时间】:2012-03-05 21:35:41
【问题描述】:

这段代码(在 Doctrine2 中)是否针对 SQL 注入进行了保护?或者应该是 $_GET['value'] 消毒了吗?

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

谢谢

【问题讨论】:

    标签: doctrine-orm


    【解决方案1】:

    它受到 SQL 注入的保护。你可以去看看源码找到这个,相关代码在Doctrine\ORM\Persisters-namespace,还有Doctrine\ORM\EntityRepositoryDoctrine\ORM\UnitOfWork

    您的条件将转换为占位符,这也是编写您自己的查询以防止 SQL 注入的推荐方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-14
      • 1970-01-01
      • 2021-06-06
      相关资源
      最近更新 更多