我写了一个启动 session 的简单 PHP 登录脚本:
//Lets start our session
//Create our session
$_SESSION['token'] = md5($user['salt'].$user['user_id'].$user['username']);
$_SESSION['id'] = $user['user_id'];
$_SESSION['username'] = $user['username'];
header('Location: index.php');
die();
在索引文件中我有这段代码:
if(array_key_exists('id', $_SESSION) && array_key_exists('username', $_SESSION)):
echo 'Welcome user';
else:
include 'login.php';
endif;
每次用户登录时都不会启动 session 。我确保密码和用户名在数据库中(使用我自己的验证脚本)。谁能看到我遗漏的任何东西。
谢谢
彼得
最佳答案
您错过了开始 session 最重要的部分:session_start()
session_start();
$_SESSION['token'] = md5($user['salt'].$user['user_id'].$user['username']);
$_SESSION['id'] = $user['user_id'];
$_SESSION['username'] = $user['username'];
header('Location: index.php');
die();
还有索引页:
session_start();
if(array_key_exists('id', $_SESSION) && array_key_exists('username', $_SESSION)):
echo 'Welcome user';
else:
include 'login.php';
endif;
关于PHP 没有启动 session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8290812/