获取zend 1.12中的所有会话数据

时间:2014-07-08 18:15:10

标签: php zend-framework zend-auth

大家早上好,我有以下代码,它总是给我带来价值' direccion'在视图上,但是我想检索数据花瓶的所有值并将它放到会议中,因为我可以这样做,他们提前感谢你。

控制器:

$authAdapter = new Zend_Auth_Adapter_DbTable();

$authAdapter
    ->setTableName('credential')
    ->setIdentityColumn('email')
    ->setCredentialColumn('password')
    ->setIdentityColumn('direccion');

$authAdapter
    ->setIdentity($form->getValue('email'))
    ->setCredential($form->getValue('password'))
    ->setIdentity('San marcos');
    $select = $authAdapter->getDbSelect();
            $select->where('status = "1"');

$auth = Zend_Auth::getInstance();

$result = $auth->authenticate($authAdapter);

查看:

if (Zend_Auth::getInstance()->hasIdentity()) {
    $username = Zend_Auth::getInstance()->getIdentity();
    $profile = 'Welcome, ' . var_dump($username) . ' <a href="/auth/public/user/logout">logout</a>';
} else {

1 个答案:

答案 0 :(得分:0)

您可以在zend_auth上为当前用户编写自己的LoginStorage类。 通过这种方式,当您对用户进行身份验证时,请在Zend_auth上使用您的自定义值为您写入LoginStorage。

这样的事情:

<?php
//LoginStorage custom class
class LoginStorage {

public function __construct ($direccion){
     $this->direccion = $direccion;
}

public $direccion;

}

所以当你运行auth时:

...
if (Zend_Auth::getInstance()->authenticate($myAuthAdapter)->isValid()) {

   //Instance of UNIQUE auth -> get session writer to record authentication rowset
   Zend_Auth::getInstance()->getStorage()->write(new LoginStorage($myDireccionForThisUser));
...

现在,当你得到Zend_Auth::getInstance()->getStorage()->read()时,你可以找到一个适合你的LoginStorage对象。