<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 24249 -->
<!-- Reviewed: no -->
<sect3 id="zend.controller.actionhelpers.flashmessenger">
    <title>FlashMessenger</title>

    <sect4 id="zend.controller.actionhelper.flashmessenger.introduction">
        <title>Введение</title>

        <para>
            Помощник <emphasis>FlashMessenger</emphasis> позволяет передавать сообщения,
            которые требуется отобразить пользователю при следующем запросе.
            Это достигается путем сохранения сообщений в
            <classname>Zend_Session_Namespace</classname>, откуда они могут быть получены при
            последующих запросах. Если вы планируете использовать
            <classname>Zend_Session</classname> или <classname>Zend_Session_Namespace</classname>,
            имеет смысл инициализировать сессию еще в файле загрузки командой
            <methodname>Zend_Session::start()</methodname>. (Подробнее о работе с сессиями в
            документации к
            <link linkend="zend.session.advanced_usage.starting_a_session">Zend_Session</link>)
        </para>
    </sect4>

    <sect4 id="zend.controller.actionhelper.flashmessenger.basicusage">
        <title>Пример использования</title>

        <para>
            Нижеприведенный пример иллюстрирует самое простое использование помощника
            <emphasis>FlashMessenger</emphasis>. При вызове действия <filename>/some/my</filename>
            добавляется сообщение "Запись сохранена!". При последующем вызове действия
            <filename>/some/my-next-request</filename> это сообщение будет
            получено из сессии (сразу после этого удалено) и отображено пользователю.
        </para>

        <programlisting language="php"><![CDATA[
class SomeController extends Zend_Controller_Action
{
    /**
     * FlashMessenger
     *
     * @var Zend_Controller_Action_Helper_FlashMessenger
     */
    protected $_flashMessenger = null;

    public function init()
    {
        $this->_flashMessenger =
            $this->_helper->getHelper('FlashMessenger');
        $this->initView();
    }

    public function myAction()
    {
        /**
         * метод для получения экземпляра помощника
         * Zend_Controller_Action_Helper_FlashMessenger
         */
        $this->_flashMessenger->addMessage('Запись сохранена!');
    }

    public function myNextRequestAction()
    {
        $this->view->messages = $this->_flashMessenger->getMessages();
        $this->render();
    }
}
]]></programlisting>
    </sect4>
</sect3>