我从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吗????
谢谢