我有一个if / elseif语句,我将GET变量传递给。一旦进入正确的区块,我可以回应一些东西以确保我在正确的位置。在那里,我已经尝试了几次设置会话变量,但它没有正常工作。我确信我做的不对。
if(isset($_GET['mygetvar'])){
$_SESSION['flag'] = 'on';
}else{
$_SESSION['flag'] = 'off';
}
当我检查链接带我到第一个街区时,我期待看到国旗,但我什么都没得到。我已经在页面顶部开始了会话。我想要做的就是使用此会话作为标志。如果它打开,做其他事情不。我基本上想把它用作开关。
编辑: 这是实际的代码。这是一个例子。如果你们在这段代码中发现语法错误,那么确实存在错误。我不这么认为,因为我可以很好地回应代码块中的内容。
if(isset($_GET['out']))
{
$_SESSION['rim'] = 'on';
echo 'out';
}
else
{
$_SESSION['rim'] = 'off';
echo 'in';
}
好的,这是发生了什么....当我做print_r($ _ SESSION); 里面 if / else块,我可以看到正确的结果echo。这是正常的吗?
答案 0 :(得分:2)
您记得事先致电session_start()
吗?
答案 1 :(得分:1)
if($_GET(['mygetvar']))
错误($ _GET不是函数,而是数组)。此外,您可能希望测试该查询参数是否存在,因此请尝试
if(isset($_GET['mygetvar']))
答案 2 :(得分:0)
$ _ SESSION是一个数组。你应该
if($_GET['mygetvar']){
注意$ mygetvar
周围的方括号 编辑:你应该这样做if(isset($_GET['mygetvar'])){