会话不会在 magento 中重新加载时持续存在
Session won't persist on reload in magento
我无法在 magento 中重新加载页面并且无法保存会话变量。
这是我项目中的一些代码片段
view.phtml
<?php
//Get the session object
$session = Mage::getSingleton("core/session", array("name"=>"frontend"));
$groupid = $session->getMyGroupId("myGroupID");
echo $groupid;
这是我查看页面的顶部。有一个下拉菜单,带有一个提交按钮,该按钮可以转到另一个名为 other.php 的页面 - 它获取下拉菜单的值并将其放入会话变量
<?php
require_once('app/Mage.php'); //Path to Magento
umask(0);
Mage::app();
//Set groupid
$data = $_POST['county_select'];
$session = Mage::getSingleton("core/session", array("name"=>"frontend"));
$session->setMyGroupId($data);
header('Location: '.$_SERVER["HTTP_REFERER"]);
?>
这将重定向回我使用下拉菜单所在的页面,并且正确的值会在屏幕上回显。
现在,如果我只是刷新此页面,会话变量就会消失。就好像它已经被取消了。谁能发现我做错了什么?如果我再次从下拉菜单中选择,一切都会像以前一样恢复正常,但是直接刷新意味着 groupid 没有任何回显,所以我知道会话变量现在不好。
谢谢。
DS
将 view.phtml 代码替换为:
echo Mage::getSingleton("core/session", array("name"=>"frontend"))->getMyGroupId();
我无法在 magento 中重新加载页面并且无法保存会话变量。
这是我项目中的一些代码片段
view.phtml
<?php
//Get the session object
$session = Mage::getSingleton("core/session", array("name"=>"frontend"));
$groupid = $session->getMyGroupId("myGroupID");
echo $groupid;
这是我查看页面的顶部。有一个下拉菜单,带有一个提交按钮,该按钮可以转到另一个名为 other.php 的页面 - 它获取下拉菜单的值并将其放入会话变量
<?php
require_once('app/Mage.php'); //Path to Magento
umask(0);
Mage::app();
//Set groupid
$data = $_POST['county_select'];
$session = Mage::getSingleton("core/session", array("name"=>"frontend"));
$session->setMyGroupId($data);
header('Location: '.$_SERVER["HTTP_REFERER"]);
?>
这将重定向回我使用下拉菜单所在的页面,并且正确的值会在屏幕上回显。
现在,如果我只是刷新此页面,会话变量就会消失。就好像它已经被取消了。谁能发现我做错了什么?如果我再次从下拉菜单中选择,一切都会像以前一样恢复正常,但是直接刷新意味着 groupid 没有任何回显,所以我知道会话变量现在不好。
谢谢。 DS
将 view.phtml 代码替换为:
echo Mage::getSingleton("core/session", array("name"=>"frontend"))->getMyGroupId();