Session 从头视图文件检查Codeigniter会话

Session 从头视图文件检查Codeigniter会话,session,codeigniter,Session,Codeigniter,我是个新手,刚开始使用Codeigniter,在会话方面遇到了一些困惑 我想要实现的是,像在普通的php中一样,我想通过使用检查会话数据的头文件include来检查用户是否登录。我不想在将数据传递到视图文件时在每个控制器中检查/写入检查代码 有人能告诉我怎么做吗 我不想在每个控制器中都执行以下操作: //Controller: if($this->session->userdata('loggedin'){ $data['loggedin'] = $this->session-

我是个新手,刚开始使用Codeigniter,在会话方面遇到了一些困惑

我想要实现的是,像在普通的php中一样,我想通过使用检查会话数据的头文件include来检查用户是否登录。我不想在将数据传递到视图文件时在每个控制器中检查/写入检查代码

有人能告诉我怎么做吗

我不想在每个控制器中都执行以下操作:

//Controller:
if($this->session->userdata('loggedin'){
$data['loggedin'] = $this->session->userdata('loggedin');
}
//I dont want to check the above on every function in every controller
$this->load->view('some_view_file', $data);

//some_view_file
if(isset($loggedin)){
echo "You are logged in!";
}
else
{
echo "Please log in!";
}
相反,我想要的东西如下所示:

//some view file
if(isset($loggedin))
{
echo "your logged in";
}
else
{
echo "please log in";
}

还有,如何使用本机php会话而不是CI会话。任何帮助都将不胜感激。谢谢。

首先,你没有理由不能在自己的观点中这样写:

<? echo ($this->session->userdata('loggedin')) ? "Logged In": "Not Logged In"; ?>
然后让所有控制器扩展MY_控制器

2) 或者在
post\u controller\u构造函数中
hook。(这更透明,如果您已经有大量控制器,可能更容易实现)

您可以将本机会话用于以下各项:

首先,你没有理由不能在你的观点中写这样的东西:

<? echo ($this->session->userdata('loggedin')) ? "Logged In": "Not Logged In"; ?>
然后让所有控制器扩展MY_控制器

2) 或者在
post\u controller\u构造函数中
hook。(这更透明,如果您已经有大量控制器,可能更容易实现)

您可以将本机会话用于以下各项:
我认为在控制器上使用构造是最明智的方法

我还建议加密会话cookie


class Blog extends CI_Controller {

       public function __construct()
       {
            parent::__construct();
            //always check if session userdata value "logged_in" is not true
            if(!$this->session->userdata("logged_in"))
            {
                 redirect('login');
            }

       }
}

我认为在控制器上使用构造是最明智的方法

我还建议加密会话cookie


class Blog extends CI_Controller {

       public function __construct()
       {
            parent::__construct();
            //always check if session userdata value "logged_in" is not true
            if(!$this->session->userdata("logged_in"))
            {
                 redirect('login');
            }

       }
}

非常感谢你。我想我和我的控制器一起工作了,非常感谢。我想我和我的控制员一起工作了谢谢你们的回应。。就像你们在这里说的一样谢谢你们的回复。。就像你们在这里说的那样。