我已经浏览了Stack Overflow和许多其他网站,以解决我的问题,但仍然没有解决方案,我甚至无法解决我的问题。问题出在帖子的底部。
以下是 login.php 的内容:
include("loginFunctions.php");
include("databaseFunctions.php");
if(checkSession())
{
header("location: adminArtist.php");
exit();
}
以下是 loginFunctions.php 的内容:
function checkSession()
{
$isOnLine = false;
session_start();
if(isset($_SESSION["online"]))
{
$isOnLine = true;
session_regenerate_id(true);
}
else
{
endSession();
}
return $isOnLine;
}
以下是 adminArtist.php 的内容:
include("loginFunctions.php");
if(!checkSession())
{
header("location: login.php");
exit();
}
我遇到的问题是:当我登录时,我会进入adminArtist页面,这意味着在login.php和adminArtist.php中都是$_SESSION["online"] = true
。但是,当我点击提交按钮或按F5或以任何其他方式重新加载页面时,它会将我发回登录屏幕。这可能是因为$_SESSION["online"]
突然变得虚假。
我需要做什么才能将值保持为 true ?
我不确定需要发布多少代码,但我认为这应该足以找到我做错了什么。否则我会编辑并添加更多。