php类变量未更新
在这里,我在成功验证后在登录页面中设置会话php类变量未更新,php,oop,Php,Oop,在这里,我在成功验证后在登录页面中设置会话 Connect.php class Connect{ private static $_INSTNC = null; private $_SSN='no_session'; private function __construct(){ try{ //database connection } catch(PDOException $e){ die($e-&
Connect.php
class Connect{
private static $_INSTNC = null;
private $_SSN='no_session';
private function __construct(){
try{
//database connection
}
catch(PDOException $e){
die($e->getMessage());
}
}
public static function getInstnc(){
if(!isset(self::$_INSTNC)){
self::$_INSTNC = new Connect();
}
return self::$_INSTNC;
}
public function setSsn($param){
$this->_SSN = $param;
return $this->_SSN;
}
public function chkSsn(){
echo $this->_SSN;
}
}
但它在从另一个页面访问时打印默认值“no_session”。由于会话已设置,它必须更改默认值。$\u SSN
的值未更新
login.php
Connect::getInstnc()->setSsn('admin');
据我所知,它似乎工作正常:大概有一些细节你没有提到。也许您正在两个不同的请求中执行这两行,或者其他什么?请确保在一个请求中调用这些方法。是的,我正在从登录页面设置会话,并从仪表板页面访问会话。我该怎么办?;您需要将会话的状态从一个请求传播到另一个请求(通常通过将会话id存储在cookie中)。请求之间不保留变量。如果希望在请求之间保留变量,则必须将它们存储在某处,可能是在$\u会话中,或者存储在数据库、文件或任何其他形式的持久存储中。
dash.php
echo Connect::getInstnc()->chkSsn();