我从 Zend 框架开始,我想使用 Zend_Auth_Adapter_DbTable 来验证我的用户......
我查看了文档,这些文档看起来很简单,但我遇到了一个错误。
这是我的代码片段:
$adapter = new Zend_Auth_Adapter_DbTable($this->_dbAdapter, 'users', 'username', 'password', 'MD5(?)');
我有一个包含“用户名”和“密码”列的“用户”表,但每次我运行
$result = $adapter->authenticate();
我收到一个应用程序错误:
Message: The supplied parameters to Zend_Auth_Adapter_DbTable failed to produce a valid sql statement, please check table and column names for validity.
谁能帮我解决这个问题?我只想要一个基本的身份验证(密码使用 md5 加密)
奇怪的是,以下工作......
$adapter = new Zend_Auth_Adapter_DbTable($this->_dbAdapter); $adapter->setTableName('users') ->setIdentityColumn('username') ->setCredentialColumn('password') ->setIdentity($username) ->setCredential(md5($password));
但是为什么“setCredentialTreatment”(或在第一个代码片段中使用它)方法会失败......
是因为我使用的是 sqlite3 而不是 mySQL 吗???
谢谢