2017-02-19 141 views
1

我试图在视图文件中显示来自flashMessenger的消息。 加入他们控制器Zend框架2会话验证失败

$status = 'error'; 
$message = 'Wrong parameters'; 
$this->flashMessenger()->addMessage($message)->setNamespace($status); 

试图在.phtml文件,以获取信息:

1)所示$this->flashMessenger()->getPluginFlashMessenger()->getCurrentErrorMessages();

2)像这个

$flash = $this->flashMessenger(); 
if (count($flash->getMessages())) { 
    $flash->render('error'); 
} 

而且总能收到同样的错误Session validation failed

调用堆栈:

#0 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/Session/AbstractContainer.php(78): Zend\Session\SessionManager->start() 
#1 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/Mvc/Controller/Plugin/FlashMessenger.php(120): Zend\Session\AbstractContainer->__construct('FlashMessenger', Object(Zend\Session\SessionManager)) 
#2 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/Mvc/Controller/Plugin/FlashMessenger.php(447): Zend\Mvc\Controller\Plugin\FlashMessenger->getContainer() 
#3 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/Mvc/Controller/Plugin/FlashMessenger.php(525): Zend\Mvc\Controller\Plugin\FlashMessenger->hasCurrentMessages() 
#4 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/Mvc/Controller/Plugin/FlashMessenger.php(593): Zend\Mvc\Controller\Plugin\FlashMessenger->getCurrentMessages() 
#5 /home/dmitriy/zend/module/Admin/view/admin/category/index.phtml(20): Zend\Mvc\Controller\Plugin\FlashMessenger->getCurrentErrorMessages() 
#6 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/View/Renderer/PhpRenderer.php(506): include('/home/dmitriy/z...') 
#7 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/View/View.php(205): Zend\View\Renderer\PhpRenderer->render(Object(Zend\View\Model\ViewModel)) 
#8 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/View/View.php(233): Zend\View\View->render(Object(Zend\View\Model\ViewModel)) 
#9 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/View/View.php(198): Zend\View\View->renderChildren(Object(Zend\View\Model\ViewModel)) 
#10 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/Mvc/View/Http/DefaultRenderingStrategy.php(102): Zend\View\View->render(Object(Zend\View\Model\ViewModel)) 
#11 [internal function]: Zend\Mvc\View\Http\DefaultRenderingStrategy->render(Object(Zend\Mvc\MvcEvent)) 
#12 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(468): call_user_func(Array, Object(Zend\Mvc\MvcEvent)) 
#13 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/EventManager/EventManager.php(207): Zend\EventManager\EventManager->triggerListeners('render', Object(Zend\Mvc\MvcEvent), Array) 
#14 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/Mvc/Application.php(355): Zend\EventManager\EventManager->trigger('render', Object(Zend\Mvc\MvcEvent)) 
#15 /home/dmitriy/zend/vendor/zendframework/zendframework/library/Zend/Mvc/Application.php(330): Zend\Mvc\Application->completeRequest(Object(Zend\Mvc\MvcEvent)) 
#16 /home/dmitriy/zend/public/index.php(24): Zend\Mvc\Application->run() 
#17 {main} 

Zend粉碎之前显示在视图文件。这里addMessage($message)

+0

'会话验证失败'错误让我想起了这个问题和答案 - > http://stackoverflow.com/questions/17428778/zend-session-container-session-validation-failed -exception-objectclosure-zf – Crisp

+0

有没有答案:(我不使用事件,只是尝试使用zend的standart功能 –

回答

0

我通过添加“session_start();”在容器的开头

+0

哪些容器? –