简体   繁体   English

Joomla 3.3获取会话变量

[英]Joomla 3.3 get session variable

in this url (URL SEF Active): www.mysite.com/test/test-test?source=mycampaign 在此URL(有效的URL SEF)中:www.mysite.com/test/test-test?source=mycampaign

I want to pass the variable (mycampaign)on different pages. 我想在不同页面上传递变量(mycampaign)。

With this code work fine in 2 page: 这段代码可以在2页中正常工作:

Page 1 (www.mysite.com/index.php/test/test-test?source=mycampaign): 第1页(www.mysite.com/index.php/test/test-test?source=mycampaign):

session_start(); 
$_SESSION['source'] = $_GET['source'];

Page 2 第2页

session_start(); 
$source = $_SESSION['source'];

Page 3 第3页

session_start(); 
$source = $_SESSION['source'];

When I get to page 3 the variable does not work anymore. 当我进入第3页时,该变量不再起作用。 The url change this way: www.mysite.com/index.php?option=com_users&view=registration&Itemid=371 网址以这种方式更改:www.mysite.com/index.php?option=com_users&view=registration&Itemid=371

this code works perfectly with URL SEF disabled and with url string "&source=mycampaign" instead of "?source=mycampaign" 此代码与禁用URL SEF以及url字符串“&source = mycampaign”而不是“?source = mycampaign”完美结合

Can someone help me? 有人能帮我吗? Thank you 谢谢

You can use session instance in Joomla 3 for that. 您可以在Joomla 3中使用会话实例。
Page 1: 第1页:

$session = JFactory::getSession();
$session->set('source',JFactory::getApplication()->input->get('source'));

Page 2 and 3: 第2页和第3页:

$session = JFactory::getSession();
$source = $session->get('source');

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM