I've used a query parameter to accomplish this. The link to my login page
looks like this:
<a href="/login?to=/some/other/page">Login</a>

When the login page is visited, the auth controller checks for the "to"
parameter and saves it in a session namespace that automatically expires in
5 minutes. When the user successfully logs in, it redirects to the value
stored in the session or to a default home page if its not found.

This allowed me to create a view helper that creates the login URL with the
"to" parameter automatically set up. I also was able to create an action
controller helper that does a redirect to the login page in case an
unauthenticated user attempts to access a page that requires authentication.

The same can be done with the logout link.

--
Hector


On Thu, Aug 20, 2009 at 4:09 AM, kamil <[email protected]> wrote:

> Enkhbilguun Erdenetsogt pisze:
>
>  Thank you for you email, Daniel Latter.
>>
>> As your advise, I created hidden form element that stores the page path,
>> and it is working if the login is in the page the user was on.
>>
>> $returnUrl = new Zend_Form_Element_Hidden('returnUrl');
>> $returnUrl->setValue(Zend_Controller_Front::getInstance()->getRequest()->getRequestUri());
>>
>>
>> However, if a user is forwarded to the login page, above method won't work
>> as I'm expecting. I don't know much about HTTP_Referrer, but I guess I would
>> be the same as hidden form method.
>> In that case, how can I store the page path?
>>
>> Please advise me.
>>
>> Thank you very much for your support.
>>
>>
>> Daniel Latter wrote:
>>
>>> Hi,
>>>
>>> You will need to capture and store the page path the user was on. Then
>>> you can use the redirector, see here:
>>>
>>>
>>> http://framework.zend.com/manual/en/zend.controller.actionhelpers.html#zend.controller.actionhelpers.redirector
>>>
>>> Dan
>>>
>>> 2009/8/20 Enkhbilguun Erdenetsogt <[email protected] <mailto:
>>> [email protected]>>
>>>
>>>    Hello,
>>>
>>>    I'm building a user login/logout functionality in my ZF project. I
>>>    just want to forward a user, just logged in or out, to the page
>>>    before the user logged in or out. Could you tell me which commands
>>>    I should use?
>>>
>>>
>>>    Thank you very much friends.
>>>
>>>
>>>
>>
> Just redirect user to   $this->_redirect($this->_request->getRequestUri());
> it works :)
> But in my projects i am forwarding user to login page not redirecting , so
> the adress in browser does not change
>
>

Reply via email to