$_SESSION变量似乎未传输


$_SESSION Variables appear to not transfer

所以我有一个网站,如果客户端没有登录,它会显示一个菜单,如果他们登录了,则会显示另一个菜单。当我将服务器更新到最新版本的PHP时,我以前的方法不再适用于session_register。所以我正在尝试将数据放入$_SESSION,但我不确定我做得对。如有任何帮助,我们将不胜感激。

设置$_SESSION:的登录脚本

$_SESSION['username'] = $my_username;
$_SESSION['password'] = $my_password;

据我所知,应该将$_SESSION['username']设置为用户名IE:tomm21

下一页通过检查是否已注册来询问用户

$_SESSION['username'] == 'tomm21';

它从另一个脚本中获取用户名,以验证信息是否只显示给该用户。

这是导致问题的代码。

<?php
if ($_SESSION['username'] == "tomm21") {
    include("includes/menu2.php");
} else {
    include("includes/menu.php");
}
?>

当我登录时,它会将我带到正确的页面,证明详细信息是正确的,但显示的菜单是错误的。

如果用户名和密码错误,登录确实会返回错误,所以我知道这一部分正在工作。我只是认为它没有正确注册会话或被正确回叫。

有什么想法吗?

确保您在两个文件的开头都通过session_start();启动会话,并且您不是调用session_destroy();