PHP 没有启动 session ?

标签 php mysql session

我写了一个启动 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/

相关文章:

php - 可排序数据 PHP MYSQL

php - Composer 类加载器命名空间问题

php - 使数据不可编辑,但在 php mysql 中单击按钮时保持可读

c# - session 值在回发和页面刷新时变为空

php - 表单提交变量未检索数据

php - MySQL将字段结果乘以另一个字段的编号

mysql - nodejs上是否有支持存储过程的mysql驱动程序?

java - JDBC 错误 : Before start of result set

session - ColdFusion调用 session 函数

mysql - 在另一个 jsp 文件中使用 ResultSet 值