类中的PHP Session输出null

时间:2017-04-17 11:13:58

标签: php class session

的login.php

$yetkili = new YETKILILER();
$yetkili->YETKILI_TC=$YETKILI_TC;
$yetkili->YETKILI_SIFRE=$YETKILI_SIFRE;
$_void = $yetkili->Giris();
$_SESSION['YETKILI'] = $yetkili;

的index.php

$yet =  $_SESSION['YETKILI'];
$tc= $yet->YETKILI_TC;
// Output $tc =null :/

大家好。我试图在php的会话中设置一个类,并从其他页面请求它,但是当我尝试这样做时,我只得到null。有人可以帮帮我吗?谢谢。

img1

img2

5 个答案:

答案 0 :(得分:0)

您需要在通过会话访问对象的页面中包含您的类。我建议您创建一个单独的文件,例如class_lib.php,您可以在其中定义所有类,然后在使用它的页面中使用includerequire

此外,您需要在将对象分配给会话之前对其进行序列化,然后在另一端对其进行反序列化。

编辑:另外,你需要session_start();在两个页面或页面中都包含它们。

答案 1 :(得分:0)

你能给出一个关于你的Giris()方法的代码片段吗? 您需要在此方法上设置会话。然后通过session_start方法获取会话变量。

度过愉快的一天。

答案 2 :(得分:0)

可能的解释:在使用$yet = $_SESSION['YETKILI'];的会话中返回YETKILI对象之前,必须确保YETKILILER的类定义可用。即在index.php中,请确保您在包含YETKILI类的文件中使用了includerequire

答案 3 :(得分:0)

解 的login.php

   $yetkili = new YETKILILER();
   $yetkili->YETKILI_TC=$YETKILI_TC;
   $yetkili->YETKILI_SIFRE=$YETKILI_SIFRE;
   $_SESSION['YETKILI'] = serialize($yetkili); 

的index.php

     $yetkili =  unserialize($_SESSION['YETKILI']);
     $test = $yetkili->YETKILI_ID;

答案 4 :(得分:0)

Solution2 login.php

$yetkili = new YETKILILER();
$yetkili->YETKILI_TC=$YETKILI_TC;
$yetkili->YETKILI_SIFRE=$YETKILI_SIFRE;
$_SESSION['YETKILI'] = serialize($yetkili); 

的index.php

 $yetkili =  unserialize($_SESSION['YETKILI']);
 $test = $yetkili->YETKILI_ID;