如何使php会话变量保持设置状态
我已经在Stack Overflow和许多其他网站上寻找了解决我问题的方法,但仍然没有找到解决方法,我甚至不知道我的问题是如何可能的。问题在帖子的底部 下面是login.php的内容: 以下是loginFunctions.php的内容: 以下是adminArtist.php的内容: 我的问题是:当我登录到adminArtist页面时,这意味着在login.php和adminArtist.php中$\u SESSION[online]=true。然而,当我点击提交按钮或按F5或以任何其他方式重新加载页面时,它会将我发送回登录屏幕。这可能是因为$_SESSION[在线]突然变得错误 我必须做什么才能保持值为真如何使php会话变量保持设置状态,php,session,session-state,Php,Session,Session State,我已经在Stack Overflow和许多其他网站上寻找了解决我问题的方法,但仍然没有找到解决方法,我甚至不知道我的问题是如何可能的。问题在帖子的底部 下面是login.php的内容: 以下是loginFunctions.php的内容: 以下是adminArtist.php的内容: 我的问题是:当我登录到adminArtist页面时,这意味着在login.php和adminArtist.php中$\u SESSION[online]=true。然而,当我点击提交按钮或按F5或以任何其他方式重新加
我不确定我需要发布多少代码,但我认为这应该足以定位我做错了什么。否则,我将编辑并添加更多内容。尝试添加会话\u开始;对于刚过初始登录页面的所有页面,请首先尝试在每个页面顶部的下方使用session_start。我尝试在多个位置将会话时间设置为3600,包括登录时、加载adminartist时以及checkSession函数中。两者都不起作用。因此,不确定我是否做得对。请编辑您的帖子,以包含login.php中的相关代码,该代码将设置$\u会话的值和任何重定向代码,输出链接到adminArtist.php等。感谢您努力编辑和帮助Sam Onela,但是该项目已经过时,我早就应该删除它了。
include("loginFunctions.php");
include("databaseFunctions.php");
if(checkSession())
{
header("location: adminArtist.php");
exit();
}
function checkSession()
{
$isOnLine = false;
session_start();
if(isset($_SESSION["online"]))
{
$isOnLine = true;
session_regenerate_id(true);
}
else
{
endSession();
}
return $isOnLine;
}
include("loginFunctions.php");
if(!checkSession())
{
header("location: login.php");
exit();
}