Thank you all for your advices.
I do not want to use FlashMessenger because I want to avoid creating
sessions for guests who didn't authenticated, for permance reasons.
I will opt for the easiest one, set the view variable in the AuthController.
I think the best solution is to pass the parameter to the IndexController
since it is not the role of the AuthController to render the view of the
IndexController, but the code gets dirty since those kind of operations
demand some if statements etc.
Matthew Weier O'Phinney-3 wrote:
>
> -- debussy007 <[EMAIL PROTECTED]> wrote
> (on Thursday, 20 September 2007, 12:56 PM -0700):
>> I wondered how to pass info between two controllers.
>> Here is the case explained where I need it :
>>
>> I have an AuthController which is responsible for all login/logout
>> actions.
>>
>> When I notice someone put a bad username and/or password,
>> the AuthController forwards the flow to the IndexController which will
>> render the home page
>> and I want to display a message to explain it is a bad user and/or
>> password
>> on this home page.
>>
>> So the question is how do I specify that there was a bad connection
>> attempt
>> between the AuthController and the IndexController ?
>>
>> In other words how do I transfer the information between the
>> AuthController
>> and the IndexController
>> that the connection failed ? What is the best way ?
>
> The fourth parameter to _forward() is an array of paramater values to
> set in the request object:
>
> $this->_forward('index', 'index', null, array('error' => 'Bad login
> credentials'));
>
> You'd then retrieve this in the other controller using _getParam():
>
> $error = $this->_getParam('error', false);
> if ($error) {
> // assign error to view?
> }
>
> Alternatively, you could simply set a view variable, and check for that
> in the home page view script:
>
> $this->view->error = 'Bad login credentials';
>
> Finally, you could use the FlashMessenger helper (as Darby has already
> noted); this helper is best used for passing messages to subsequent
> requests.
>
> --
> Matthew Weier O'Phinney
> PHP Developer | [EMAIL PROTECTED]
> Zend - The PHP Company | http://www.zend.com/
>
>
--
View this message in context:
http://www.nabble.com/Passing-information-between-controllers-tf4489758s16154.html#a12805273
Sent from the Zend Framework mailing list archive at Nabble.com.