2012-10-17 2 views
2

Я пытаюсь выполнить постоянный вход с кукисами в Zend Framework.
Поэтому я хочу проверить каждую загрузку каждой страницы, если установлен определенный файл cookie, и если это так, наберите loginAction, который находится в моем IndexController (действие работает отлично), передавая два параметра из файла cookie.Zend: вызвать действие на каждую загрузку страницы

У меня есть два вопроса:

1. Где я должен поместить вызов функции, так что выполняется каждый раз? Bootstrap.php, layout.phtml, index.php или где-то еще?

2. Как я могу позвонить loginAction за пределами IndexController при передаче параметров?

ответ

0
  1. Определенно не layout.phtml (Вы мнение должно предпочтительно только иметь выход HTML). Если ваше приложение имеет несколько бутстрапов, вы можете поместить эту функцию в index.php, поэтому у вас не будет одинакового кода в разных загрузочных файлах. Если у вас есть только одна загрузка, тогда вызовите функцию там.

  2. IndexController::loginAction($param1, $param2);

+0

Я получаю ' 'IndexController' Класс не found' и' loginAction' не статическая функция – Horen

+0

Использование автозагрузчика, чтобы загрузить класс - см http://stackoverflow.com/questions/1510493/ расширение-the-indexcontroller-with-a-basecontroller-in-zend для этого – bogatyrjov

0

Я думаю, что плагин будет более уместно в данном случае.

preDispatch() вызывается перед отправкой действия диспетчером . Этот обратный вызов допускает поведение прокси или фильтра. По изменение запроса и сброс его отправленного флага (через Zend_Controller_Request_Abstract :: setDispatched (false)), текущее действие может быть пропущено и/или заменено.

http://framework.zend.com/manual/1.12/en/zend.controller.plugins.html

Смежные вопросы