会话未获取变量打印长字符串
Session not getting the variable prints long string
我有这节课class
class Session
{
public function __construct()
{
if (!isset($_SESSION)) {
$this->initSession();
}
}
public function setSessionId()
{
$_SESSION['Id'] = session_id();
}
public function getSessionId()
{
return $_SESSION['Id'];
}
public function initSession()
{
session_start();
error_reporting(E_ALL);
$this->setSessionId();
}
public function isLogged(){
if(isset($_SESSION['Id'])){
return true;
}else{
$this->deleteSession();
return false;
}
}
在我的 login.php 中,我将 id 传递给我的会话,但是
$results['Id'] = session_id();
当我到达 index.php 并回显 ID 时,它回显一个长字符串而不是当前用户 ID
$session = new Session();
$id = $session->getSessionId();
echo $id;
请帮助我如何传递变量!我已经尝试了很多但我似乎被困在这里!非常感谢一些帮助
为您的 class 添加其他方法:
public function setUserId($userid) {
$_SESSION['user_id'] = $userid;
}
public function getUserId() {
return isset($_SESSION['user_id']) ? $_SESSION['user_id'] : null;
}
然后您的登录页面应该在用户登录后调用 $session->setUserId()
,从数据库传递 ID。
我有这节课class
class Session
{
public function __construct()
{
if (!isset($_SESSION)) {
$this->initSession();
}
}
public function setSessionId()
{
$_SESSION['Id'] = session_id();
}
public function getSessionId()
{
return $_SESSION['Id'];
}
public function initSession()
{
session_start();
error_reporting(E_ALL);
$this->setSessionId();
}
public function isLogged(){
if(isset($_SESSION['Id'])){
return true;
}else{
$this->deleteSession();
return false;
}
}
在我的 login.php 中,我将 id 传递给我的会话,但是
$results['Id'] = session_id();
当我到达 index.php 并回显 ID 时,它回显一个长字符串而不是当前用户 ID
$session = new Session();
$id = $session->getSessionId();
echo $id;
请帮助我如何传递变量!我已经尝试了很多但我似乎被困在这里!非常感谢一些帮助
为您的 class 添加其他方法:
public function setUserId($userid) {
$_SESSION['user_id'] = $userid;
}
public function getUserId() {
return isset($_SESSION['user_id']) ? $_SESSION['user_id'] : null;
}
然后您的登录页面应该在用户登录后调用 $session->setUserId()
,从数据库传递 ID。