我在用户名或密码错误时收到此错误。正确的用户名和密码运行成功。 在....中的非对象上调用成员函数count()
我的代码是
public function executeLogin(sfWebRequest $request)
{
$this->form = new loginForm();
if ($request->isMethod('post'))
{
$this->form->bind($request->getParameter('login'));
if ($this->form->isValid())
{
$unm=$this->form->getValue('username');
$pwd=$this->form->getValue('password');
$q = Doctrine_Query::create()
->select('id')
->from('login')
->andWhere('username = ?', $unm)
->andWhere('password = ?', $pwd);
$q->execute();
$result = $q->fetchOne();
if ($result->count() > 0)
{
$this->getUser()->setAuthenticated(true);
$this->getUser()->addCredential('user');
$this->redirect('user/index');
}
else
{
$this->redirect('user/login');
}
}
}
}
答案 0 :(得分:2)
$ result value具有NULL值。你应该先检查一下。让我们改变条件如下:
if ($result && $result->count() > 0) {...}
甚至
if ($result) {...}