Zend session und zend auth

Ich habe ein login-system durch zend auth hier ist der code

//userAuthentication
   public function authAction(){
       $request     = $this->getRequest();
       $registry    = Zend_Registry::getInstance();
       $auth        = Zend_Auth::getInstance(); 
       $DB = $registry['DB'];
           $authAdapter = new Zend_Auth_Adapter_DbTable($DB);
               $authAdapter->setTableName('user')
                            ->setIdentityColumn('user_name')
                            ->setCredentialColumn('user_password');

      $username = $request->getParam('username');
      $password = $request->getParam('password');
      $authAdapter->setIdentity($username);
      $authAdapter->setCredential($password);
      $result = $auth->authenticate($authAdapter);

      if($result->isValid()){
           $data = $authAdapter->getResultRowObject(null,'password');
           $auth->getStorage()->write($data);
           $this->_redirect('/login/controlpannel');
       }else{
           $this->_redirect('/login/login');
        }
  }

Diese Arbeit jetzt gut. Es ist user_id (Spalte) Benutzer (Tabelle) wo gibt es Benutzername und Passwort zu. Ich müssen zu bekommen, dass bestimmte user_id aus der Tabelle, die sich einfach nur einloggen und legte es in der Sitzung durch

$user_session = new Zend_Session_Namespace('user_session');
$user_session->username = $username;
$user_id->user_id       = $user_id;

so, dass ich Abfragen kann einige info gegen diese $user_id und übergeben Sie das Ergebnis in der Ansicht (name) controlpanel

warum wollen Sie in der Sitzung manuell? Es wird create session einmal anmelden und Sie bekommen können, aus dem Speicher.
wie bekomme ich die user_id aus dem Speicher ???
$Daten = Zend_Auth::getInstance()->getStorage()->read(); $this->Ansicht->username = $Daten->Benutzername; $this->Ansicht->id = $Daten->user_id;

InformationsquelleAutor Fawad Ghafoor | 2012-01-25

Schreibe einen Kommentar