我正在使用Joomla。在一个页面上,我通过以下代码设置了一些会话变量。
$session =& JFactory::getSession();
$session->set( 'myvar', 'helloworld','my_shop' );
然后我的网站重定向到另一个页面。 但是我无法通过以下方式在 secode 页面中获取该变量。
echo 'Session variable myvar has value: ' . $session->get( 'myvar', 'empty' );
我在控制器中使用$mainframe->redirect()。就在重定向之前,我得到了会话变量,而在重定向之后,我没有得到会话变量。
在重定向时还具有其他变量(以前存储)的会话,但它们被保留!!...提前谢谢。
所以官方的答案是:
加
$session =& JFactory::getSession();
在调用 $session->get() 之前的第二页上
我仍在学习 Joomla 会话,但对我来说,您在尝试获取会话时似乎使用了不同的命名空间。
用于设置会话的名称空间称为 my_shop
。
$session->set( 'myvar', 'helloworld','my_shop' );
用于获取会话的命名空间称为 empty
。
$session->get( 'myvar', 'empty' );