Zend_Auth_Adapter_Db Таблица для аутентификации пользователей

Я начинаю с 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 ???

Спасибо


person just_a_dude    schedule 02.12.2009    source источник


Ответы (1)


Похоже на то. Для использования MD5() в SQLite вам потребуются Tcllib и Trf.

person Franz    schedule 02.12.2009