<?php class AuthController extends Zend_Controller_Action { public function indexAction() { $this->view->form = new Application_Form_Login(); } public function loginAction() { $this->_helper->viewRenderer('index'); $form = new Application_Form_Login(); if ($form->isValid($this->getRequest()->getPost())) { $adapter = new Zend_Auth_Adapter_DbTable( null, 'user', 'username', 'password', ); $adapter->setIdentity($form->getValue('username')); $adapter->setCredential($form->getValue('password')); $auth = Zend_Auth::getInstance(); $result = $auth->authenticate($adapter); if ($result->isValid()) { return $this->_helper->redirector( 'index', 'index', 'default' ); } $form->password->addError('Błędna próba logowania!'); } $this->view->form = $form; } public function logoutAction() { $auth = Zend_Auth::getInstance(); $auth->clearIdentity(); return $this->_helper->redirector( 'auth', 'index', 'default' ); } }
Listing 34.3. Kontroler AuthController
Rozdział 34. Pierwsza aplikacja zawierająca formularz do logowania