我有一个使用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>';
}
?>
我希望获得帮助。