Комментарии 16
«ложим» -> кладем
Вместо плагина я бы посоветовал расширить класс Zend_Auth, чтобы он хранил Row (только если это действительно необходимо). Кстати, объект Row можно создать при помощи специальной функции из массива без выполнения запроса к базе.
А зачем нужно $registry = Zend_Registry::getInstance(); в indexAction в контроллере?
И зачем использовать $el при определении формы?
И зачем использовать $el при определении формы?
$registry = Zend_Registry::getInstance();
В данном примере ненужен, поправил.
$el используется чисто для собственного удобства, можно просто писать
$this->getElement('password')->setRequred(true)…
Просто, далее идут декораторы, но в примере я их не добавлял а просто вычистил, т.к они не относятся к данному примеру.
В данном примере ненужен, поправил.
$el используется чисто для собственного удобства, можно просто писать
$this->getElement('password')->setRequred(true)…
Просто, далее идут декораторы, но в примере я их не добавлял а просто вычистил, т.к они не относятся к данному примеру.
НЛО прилетело и опубликовало эту надпись здесь
была еще 1,7, в ней можно было делать как ini файл, так и из пхп файла. Я выбирал php формат из-за того что эклипс делал в нем подсветку. В новой 1,8 успешно пользуюсь ini файлом. Да и вообще все структурированее стало, и меньше хочется заниматься самодеятельностью :)
НЛО прилетело и опубликовало эту надпись здесь
ну логаут тут проще, думаю можно в комменте рассказать.
Делаем логаут контроллер в indexAction все что нужно сделать
$auth->clearIdentity();//удаляем юзера из хранилища
Zend_Session::forgetMe();//очищаем «запомни меня»
Zend_Session::expireSessionCookie();//ну и сессию добить
Так как на сайте, что я разрабатываю можно постить картинки я сделал дополнительную защиту и добавил
route что бы логаут был по url — /logout/userName(конкретное имя юзера), что бы умники не вставляли в src для картинки путь к логауту не не случилась ситуация когда всех выкидывает.
Если есть вопросы я отвечу :)
Делаем логаут контроллер в indexAction все что нужно сделать
$auth->clearIdentity();//удаляем юзера из хранилища
Zend_Session::forgetMe();//очищаем «запомни меня»
Zend_Session::expireSessionCookie();//ну и сессию добить
Так как на сайте, что я разрабатываю можно постить картинки я сделал дополнительную защиту и добавил
route что бы логаут был по url — /logout/userName(конкретное имя юзера), что бы умники не вставляли в src для картинки путь к логауту не не случилась ситуация когда всех выкидывает.
Если есть вопросы я отвечу :)
А как делать произвольный запрос для авторизации, мне, например, надо выбрать email из другой таблицы для аутентификации?
т.е. в
надо добавить left join Customer_Email on Customer.id = Customer_Email.CID, а для логина использовать не Login, а этот самый email?
т.е. в
$authAdapter = new Zend_Auth_Adapter_DbTable(
$dbAdapter,
'Customer',
'Login',
'Password'
//'HashBytes("md5",?) AND status = "OK"'
);
* This source code was highlighted with Source Code Highlighter.
надо добавить left join Customer_Email on Customer.id = Customer_Email.CID, а для логина использовать не Login, а этот самый email?
думаю проще всего написать свой собственный auth адаптер.
Можно еще получить db select
$select = $adapter->getDbSelect();
$select->//сделать join
$adapter->authenticate();
этот способ сам лично не пробовал, так что не знаю будет ли работать.
Можно еще получить db select
$select = $adapter->getDbSelect();
$select->//сделать join
$adapter->authenticate();
этот способ сам лично не пробовал, так что не знаю будет ли работать.
вот как раз его сейчас буду пробовать, спасибо
PS сложно с Yii переходить :)
PS сложно с Yii переходить :)
спасибо, получилось:
$authAdapter = new Zend_Auth_Adapter_DbTable(
$dbAdapter,
'Customer',
'e.Email',
'Password'
);
$authAdapter->getDbSelect()->joinLeft(array('e' => 'Customer_Email'), 'Customer.ID = e.Customer_ID', 'Email');
$authAdapter->setIdentity($userName)->setCredential($userPassword);
* This source code was highlighted with Source Code Highlighter.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Zend framework — туториал: авторизация