会话不是在PHP7.4中启动的,但是相同的代码在PHP7.1中工作,没有做任何更改
backend.php文件:设置以下会话变量的位置会话不是在PHP7.4中启动的,但是相同的代码在PHP7.1中工作,没有做任何更改,php,session-variables,Php,Session Variables,backend.php文件:设置以下会话变量的位置 $_SESSION['user_id'] = $user_id; $_SESSION['user_email'] = $user_email; 下一步:正如我可以在目录/var/cpanel/php/sessions/ea-php74中验证的那样,正在创建会话文件。在此之后,假定网站frontendex.php文件可以阅读和理解会话,下面是index.php代码 session_start(); if(isset($_SESS
$_SESSION['user_id'] = $user_id;
$_SESSION['user_email'] = $user_email;
下一步:正如我可以在目录/var/cpanel/php/sessions/ea-php74中验证的那样,正在创建会话文件。在此之后,假定网站frontendex.php文件可以阅读和理解会话,下面是index.php代码
session_start();
if(isset($_SESSION['user_email'])){
update session variable e.g.,
$user_email = $_SESSION['user_email'];
}else{
echo "session not set";
}
但不知何故,session_start()或if(isset($_session['user_email'])不起作用,因此流总是转到else条件,并以“session not set”结束
注意:php.ini文件包含session.save_path=“/var/cpanel/php/sessions/ea-php74”
请建议
请注意,同样的问题被“Machavity”删除,理由是它已经得到了回答:但这些建议的问题不适用于我的情况,我不得不在这里再次提问。我将要求您停止这种不公平的做法,或者发出通知,只有“Machavity”这样的专家和大人物才有权留在这个论坛,请让我知道,这样我最好离开这个论坛。在设置会话的初始值之前,您必须先开始会话,例如:
session_start();
$_SESSION['user_id'] = $user_id;
$_SESSION['user_email'] = $user_email;
然后您可以读取或编辑会话值:
if(isset($_SESSION['user_email'])){
echo "session is set";
}else{
echo "session not set";
}
对于不同的php版本,您可能有两个不同的php.ini文件。检查包含单词“session”的所有行,尤其是“lazy_write”