我一直在试图弄清楚这一点,现在,它正在推动我坚果。基本上我有一个美国和加拿大用户的表格。还有的形式为加拿大用户,其引导用户可以-sesssion.php,其中包含底部的链接:更改SESSION变量值
<?php
if (isset($_SESSION['can'])) {
session_start();
session_destroy();
session_unset();
session_start();
$_SESSION['can'] = 2;
}
else {
session_start();
$_SESSION['can'] = 1;
}
header('Location: '. $_SERVER['HTTP_REFERER'] . '');
?>
基本上,如果他们点击链接,它会设置$ _SESSION [“可以” ] = 1.现在还有另一种选择,如果他们点击该链接,它会将它们带回到此页面,并且会话应该被销毁并设置一个新值(呃,这就是它应该做的)。问题是,我已经打印出$ _SESSION ['can'],并且在进入该页面后它仍然保留了旧值。有没有更好的方法来做到这一点,或者我的代码有什么问题吗?谢谢您的帮助。
你应该知道的是,'HTTP_REFERER'是不是可以依靠被设置,或被设置为实际的头转介页。它是可选的,浏览器可以发送任何想要的东西。 –
有没有更有用的选择,还是更实用一些,只需在页面中包含此php? –
您可以将代码放在任何想要更改会话变量的位置。您可以根据需要多次更改,而无需将任何人发送到新页面。 –