CodeIgniter会话未保存

时间:2011-09-02 08:53:16

标签: session codeigniter

我有测试控制器示例名称。

在索引方法中我将进行会话,它将成功存储在数据库中,但是当我想在其他方法中读取它们时,它将在数据库中进行另一个会话。 例如:

public function index(){
     $this->session->set_userdata('test','test');
}
public function test(){
     echo $this->session->userdata('test');
}

它什么都不回应。当我检查数据库时,它就成了新的一行。

2 个答案:

答案 0 :(得分:1)

我在其他地方(例如here)看到Codeigniter在localhost上有cookie问题而且会导致你所描述的问题,因为如果cookie无效,Codeigniter将无法识别会话并从数据库中收集该信息。为了验证这个假设,您可以将应用程序上传到真实服务器并在那里进行尝试。

答案 1 :(得分:0)

我遇到了类似的问题,发现System的会话库在设置cookie时遇到了一些问题

setcookie(
                $this->sess_cookie_name,
                $cookie_data,
                $expire,
                $this->cookie_path,
                $this->cookie_domain,
                $this->cookie_secure
            );

我只是用

重写了它
setcookie(
                $this->sess_cookie_name,
                $cookie_data,
                $expire,
                $this->cookie_path,
                $this->cookie_secure
            );

并且效果很好