我是zend的新手。我正在尝试使用 zend 框架创建登录表单。但它的创造问题。下面是我的功能
public function loginAction()
{
$db = $this->_getParam('db');
$form = new Application_Form_Login();
$this->view->form = $form;
if($this->getRequest()->isPost())
{
$formData = $this->getRequest()->getPost();
if ($form->isValid($formData))
{
$adapter = new Zend_Auth_Adapter_DbTable(
$db,
'users',
'emailaddress',
'password',
'MD5(CONCAT(?, password_salt))'
);
$adapter->setIdentity($form->getValue('email'));
$adapter->setCredential($form->getValue('password'));
$auth = Zend_Auth::getInstance();
$result = $auth->authenticate($adapter);
if ($result->isValid()) {
$this->_helper->FlashMessenger('Successful Login');
$this->_redirect('/');
return;
}
}
}
}
它在以下行给出错误-> $result = $auth->authenticate($adapter);
错误是 -> 消息:提供给 Zend_Auth_Adapter_DbTable 的参数未能生成有效的 sql 语句,请检查表名和列名的有效性。
我的表名是“用户”,它有列(id、名字、姓氏、年龄、电子邮件地址、密码)。