我一直在为此痛打我的头。我的代码实际上与其他可以工作的项目相同。这是我的做法:
session_start();
set_up_session($username);
redirect_to('index.php');
以及两个功能:
function redirect_to($location=null) {
if($location!=null) {
header("Location: {$location}");
exit;
}
}
function set_up_session($username) {
session_start();
$_SESSION['user_id']=$id;
$_SESSION['logged_in']=true;
$_SESSION['username']=$username;
}
如果我注释掉重定向并回显任何$_SESSION
var,则 var 读取正确。但是在重定向之后,会话结束。
这就是下一页的内容。
<?php if (!isset($_SESSION['logged_in'])) { ?>
// do stuff <-- this is what gets shown showing session is no longer active
<?php } else { ?>
<p>Hi, <?php echo $_SESSION['username']; ?></p>
<?php } ?>