Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [ZF] Zend_Auth - nie trzyma logowania
Forum PHP.pl > Forum > PHP > Frameworki
mitring
Cześć, mam problem, stworzyłem sobie formularz do logowania i samo logowanie:
  1. class Frontend_UserController extends Zend_Controller_Action
  2. {
  3.  
  4. public function init()
  5. {
  6. // pobranie informacji czy uzytkownik jest juz zalogowany
  7. $auth = Zend_Auth::getInstance();
  8.  
  9. // sprawdzenie czy zalogowany
  10. if ( $auth->hasIdentity() ) {
  11.  
  12. echo 'user: zalogowany';
  13.  
  14. }
  15. }
  16.  
  17. public function indexAction()
  18. {
  19. // action body
  20. }
  21.  
  22. public function loginAction()
  23. {
  24. // porabrane instancji Zend_Auth
  25. $auth = Zend_Auth::getInstance();
  26.  
  27. // sprawdzenie czy jest zalogowany
  28. if ( $auth->hasIdentity() ) {
  29. $this->_redirect('/frontend/');
  30. } else if ( $this->getRequest()->isPost() ) {
  31. // sprawdzenie wyslanych danych przez POST
  32. $login = $this->getRequest()->getPost('login');
  33. $pass = $this->getRequest()->getPost('pass');
  34.  
  35. $dbAdapter = Zend_Db_Table::getDefaultAdapter(); // domysle polaczenie z baza
  36. $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
  37. $authAdapter->setTableName('user')
  38. ->setIdentityColumn('login')
  39. ->setCredentialColumn('pass');
  40. // ->setCredentialTreatment('salt');
  41.  
  42. // przekazanie danych i sprawdzenie w bazie
  43. $authAdapter
  44. ->setIdentity($login)
  45. ->setCredential($pass);
  46.  
  47. $authAdapter->authenticate($dbAdapter);
  48.  
  49. if ($authAdapter->authenticate()->isValid()) {
  50. echo 'poprawne';
  51. } else {
  52. echo 'blad logowania';
  53. }
  54.  
  55. //return $authAdapter->authenticate();
  56.  
  57. //var_dump($authAdapter);
  58. }
  59. $this->view->formularz = new Frontend_Form_Login();
  60. }
  61.  
  62.  
  63. }


I teraz wprowadzam dane i mam komunikat, że dane są poprawne. Po odświeżeniu strony dalej mam formularz i brak informacji, że jestem zalogowany. Co źle robięquestionmark.gif
k_@_m_i_l
  1.  
  2. if ($authAdapter->authenticate()->isValid())
  3. {
  4. $usr = $authAdapter->getResultRowObject(null,array('user_password'));
  5. $auth->getStorage()->write($usr);
  6. } else
  7. {
  8. echo 'blad logowania';
  9. }
  10. }


Poza tym spójrz na ten temat: Temat: ZFZand auth Id aktualnie zalogowanego uzytkownika
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.