使用php创建会话

时间:2012-11-16 15:27:25

标签: php

我有一个问题,

我有一个检查用户登录的登录页面,当用户成功登录时,我开始一个新的会话:

$loggedIn = new loggedIn();
                    $loggedIn->email = $userdetails["email"];
                    $loggedIn->displayname = $userdetails["display_name"];
                    $loggedIn->username = $userdetails["user_name"];


                                        var_dump($loggedIn->username);

                    //Update last sign in
                                        session_start();
                    $_SESSION["user"] = $loggedIn;

                                        $kk =  $_SESSION["user"];
                                        var_dump($kk->username);

它显示succsessul会话创建,但当我转到其他页面或返回此页面时,我没有会话:

isset($_SESSION["user"])

为什么?

2 个答案:

答案 0 :(得分:1)

您需要在每个要使用会话的页面上放置session_start();。另外,请确保在您需要的每个页面上定义class loggedIn

答案 1 :(得分:0)

如果要从会话中检索数据,则必须在每个页面中插入session_start()。 在向浏览器输出任何内容之前,必须先调用session_start()

您可以使用您的功能并检索信息。 如果你想看到你存储的会话中的所有数据,你可以像这样打印数组会话:

var_dump($_SESSION);

另一个可能的问题可能是您的班级loggedIn 你有没有以正确的方式实例化这个课程?
你可以在那个类或类似的东西中出现一些错误。