我希望能够从我的类中存储$ _SESSION变量,但它似乎不起作用。我搜索了stackoverflow并用google搜索了一段时间,并且无法找到足够的信息来确定这是否可行。
我可以在班级中存储$ _SESSION变量吗?我似乎无法在课堂外访问它。
class myClass {
public function authorizeLogin($email,$password) {
global $_SESSION;
//Query to authorize user
$q_auth = $this->query("
SELECT first_name,last_name,email,date_registered,access_id
FROM users
WHERE email = '$email' AND password = '$password'");
$authorized = $q_auth ? 1 : 0 ;
if($q_auth) {
//Loop through values and assign in session
foreach($q_auth as $key => $value) {
$_SESSION[$key] = $value;
}
}
return $authorized;
}
}
答案 0 :(得分:2)
$_SESSION
是超全局的 - 无需使用global
。
您的代码看起来很好 - 但您是否运行了session_start();
?
答案 1 :(得分:1)
我可能错了,但我相信你必须在开始会议之前加入课程。然后创建您的对象。由于一些奇怪的原因,我无法解释,我记得在某个地方听到这个。
所以顺序应该是include(“myClass.class.php”);在session_start(); $ myClass = new myClass();