我正在设置一条从控制器到核心会话的消息,并重定向到主页Ex-
$session = Mage::getSingleton('core/session');
$session->addError('This is test message');
$this->_redirect('/');
但它没有显示在主页上,我也检查了xml文件和其他块,但找不到任何线索。当我调试主页phtml文件上的消息时,它显示为这样的
$messages=Mage::getSingleton("core/session")->getMessages();
var_dump($messages);
object(Mage_Core_Model_Message_Collection)#77 (2) {
["_messages":protected]=> array(0) { } ["_lastAddedMessage":protected]=> object(Mage_Core_Model_Message_Error)#76 (6) {
["_type":protected]=> string(5) "error" ["_code":protected]=> string(34) "This is test message" ["_class":protected]=> string(0) "" ["_method":protected]=> string(0) ""
["_identifier":protected]=> NULL ["_isSticky":protected]=> bool(false) } }
任何人都知道如何解决这个问题,谢谢
//成功消息
Mage::getSingleton("核心/会话"(->addSuccess(有些成功消息"(;
//错误消息
Mage::getSingleton("核心/会话"(->addError("某些错误消息"(;
//信息消息(见下面的链接(
Mage::getSingleton("核心/会话"(->addNotice("这只是一个仅供参考消息"(;
//需要这些行才能使工作
session_write_close((//这句话很重要!$this->_重定向("模块/控制器/动作"(;
//或
$url='path/to/your/page'$这->_重定向url($url(;
这将在控制器中工作,但如果您试图在输出已经发送后重定向,那么您只能通过javascript:来实现
<script language=”javascript” type=”text/javascript”>
window.location.href=”module/controller/action/getparam1/value1/etc"";
</script>