php - 返回页面时无法识别 Cookie
问题描述
我有一个使用 cookie 构建的登录系统。当我第一次登录时,cookie 会生成并显示在设置中的 Chrome Cookies 中(这就是我知道它已经真正创建的方式)。当我被转移到仪表板时,我可以看到我登录时使用的用户名,到目前为止还不错。如果我关闭浏览器并直接进入仪表板,就会出现问题。在我再次手动登录之前,它将用户名显示为未定义的索引。
这是cookie的创建:
$_SESSION['userid'] = $row['userID'];
$_SESSION['username'] = $row['username'];
$cookie_value = $_SESSION['username'] ;
setcookie('guysite', $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day
$_SESSION['userpwd'] = $row['password'];
$_SESSION['uname'] = $row['firstname'];
header("Location: dashboard.php");
这是仪表板检查:
<?php
session_start();
if(!isset($_COOKIE['guysite']))
{
echo '<script>document.location.href="logout.php";</script>';
}
else
{
echo '<span class="loginstat">שלום: ' . $_SESSION['username'] . '</span></li><li><a href="logout.php" class="nohover">( <i class="fas fa-sign-out-alt"></i> התנתק )</a>';
}
?>
解决方案
推荐阅读
- java - 如何从 ArraryList 中选择并打印出多个项目?爪哇
- android - 未能解决
- angular - 为什么我的表单会在页面加载后立即验证所有默认值(未触及的字段)?
- css - 如何使用 css 或 jquery 制作水平曲线
- javascript - 为什么我不能用这个表单将数据插入我的数据库?
- scala - 使用 MDC 登录流
- javascript - 如何清空关注复选框更改的切换文本框?
- c - 从文件 fgetc 读取性能与读取整个字符串
- python - 如何对所有视图进行通用验证?
- python - “Python:当前文件(集成终端)”——Visual Studio 代码