我正在使用login.php页面。 当用户成功登录时,系统会将其用户名保存到会话中。如下代码所示:
if ($user != null) {
$_SESSION['username'] = $user["username"];
$_SESSION['userid'] = $user["id"];
return 0;
}
然后页面将位于main.php。 Main.php将读取会话,如下面的代码:
session_start();
if (isset($_SESSION['username']) == false || empty($_SESSION['username']))
{
// transfer into login page
}
else
{
echo $_SESSION['username'];
}
主页面无法读取$ _SESSION ['username'],值为null。 我现在该怎么办?
答案 0 :(得分:2)
您应该在session_start()
检查条件页面添加$user
。
session_start();
if ($user != null)
{
$_SESSION['username'] = $user["username"];
$_SESSION['userid'] = $user["id"];
return 0;
}
答案 1 :(得分:1)
使用SESSION变量时必须添加session_start()
session_start(); //at the beginning of file
if ($user != null) {
$_SESSION['username'] = $user['username'];
$_SESSION['userid'] = $user['id'];
return 0;
}
然后
session_start();
if (isset($_SESSION['username'])) {
// transfer into login page
}
else
{
echo $_SESSION['username'];
}
答案 2 :(得分:1)
如果要使用会话变量。你必须在使用会话变量之前启动会话。
session_start();
if ($user != null) {
$_SESSION['username'] = $user["username"];
$_SESSION['userid'] = $user["id"];
return 0;
}
答案 3 :(得分:0)
session_start();
if (count($user)>0 and is_array($user)) {
$_SESSION['username'] = $user["username"];
$_SESSION['userid'] = $user["id"];
}