Hi Dan,

Once thing I notice is that the rememberMe() call comes after starting
the session. Instead, rememberMe() can only have an effect /before/ the
session is started, since it uses session_set_cookie_params().

Maybe try taking out the call to Zend_Session::start(), since the
session is automatically started when instantiating Zend_Session_Namespace.

Best regards,
Darby

Dan Rossi wrote:
> Hi here is the session issue again it wont store the session variable
> when going to a new page. Im using a custom Zend_Auth adapter which
> firstly authenticates a client anonymouslly with some details in a
> customer database via a soap service. It returns the non cookie session
> id. It returns to another system like
> /check/index/client/03523252380952380935.
> 
> It gets past the first session, loads the persistent temporary login
> from the url session. I then want to clear that authentication and then
> attermpt to setup either a more permanent session or permanent login
> using the auth adapter again somehow. The problem is as before, any
> vairable i try to set to the new namespace is not stored at all, even in
> the session file.
> 
> Code inside the check controller is
> 
> Zend_Session::setOptions($config->keySession->toArray());
>        Zend_Session::setId($this->getRequest()->getParam('client'));
>        Zend_Session::start();
>              $auth = Zend_Auth::getInstance();
>        if ($auth->hasIdentity())
>        {
> 
> 
>            if ($auth->getStorage()->read()->access_code)
>            {
>                $access_code = $auth->getStorage()->read()->access_code;
>                $auth->clearIdentity();
>                Zend_Session::setOptions($config->session->toArray());
>                Zend_Session::regenerateId();
>                Zend_Session::start();
>                Zend_Session::rememberMe(172800);
>                $this->session = new Zend_Session_Namespace('Custom');
>                $this->session->access_code = $access_code;
>                $this->_redirector->gotoUrl('/');
>                return;
>            }
>                  }
> 
> 

Reply via email to