我试图写一个简单的查询,然后var转储结果。但是我收到了这个错误:
[语义错误]第0行,第15行附近' Admin WHERE name':错误: 班级'管理员'没有定义。
这是我的方法:
public function processLogin()
{
$name = $this->request->request->get('username');
$password = $this->request->request->get('password');
$em = $this->getDoctrine()->getManager();
$query = $em->createQuery('SELECT id FROM Admin WHERE name = :name AND password = :password')
->setParameter('name', $name)
->setParameter('password', $password);
$result = $query->getResult();
var_dump($result);
}
哪里可能是错误?
答案 0 :(得分:1)
重写您的查询,如下所示
$query = $em->createQuery(
'SELECT u.id
FROM YourBundle:Admin u
WHERE u.name = :name
AND
u.password = :password
')
->setParameter('name', $name)
->setParameter('password', $password);
别名部分与查询构建器有关。我认为如果您使用实体经理,则无需做那么多工作。