w klasie bazowej kontrolerów tworzę sobie coś takiego:

  1. $go_back = new Zend_Session_Namespace('go_back', true);
  2. $go_back->setExpirationSeconds(30);
  3. $go_back->params = array(
  4. "module" => $this->_request->getModuleName(),
  5. "controller" => $this->_request->getControllerName(),
  6. "action" => $this->_request->getActionName()
  7. );


var_dump($go_back) pokazuje:

  1. array(3) { ["module"]=> string(7) "default" ["controller"]=> string(5) "index" ["action"]=> string(5) "index" }


czyli prawda.

dzięki temu mam w sesji na 30 sekund zachowany adres strony z której zostało wywołane logowanie działające w innym module i kontrolerze (nie wiedziec czemu _request->setParam() i getParam() nie działają mi).

no więc logowanie się odbywa, a następnie odczytuję sobie zapisany w sesji adres do którego chcę się cofnąć:

  1. $go_back = new Zend_Session_Namespace('go_back');
  2. var_dump($go_back->params);


i tutaj vardump pokazuje:

  1. array(3) { ["module"]=> string(7) "default" ["controller"]=> string(5) "index" ["action"]=> string(6) "search" }


ktoś ma pomysł, dlaczego tak może się dziać? ohmy.gif ohmy.gif ohmy.gif

tak się zastanawiam czy zend_navigation tutaj w jakiś sposób nie miesza?