Я начинаю с Zend framework, и я хотел использовать 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 ???
Спасибо