Session 从头视图文件检查Codeigniter会话
我是个新手,刚开始使用Codeigniter,在会话方面遇到了一些困惑 我想要实现的是,像在普通的php中一样,我想通过使用检查会话数据的头文件include来检查用户是否登录。我不想在将数据传递到视图文件时在每个控制器中检查/写入检查代码 有人能告诉我怎么做吗 我不想在每个控制器中都执行以下操作:Session 从头视图文件检查Codeigniter会话,session,codeigniter,Session,Codeigniter,我是个新手,刚开始使用Codeigniter,在会话方面遇到了一些困惑 我想要实现的是,像在普通的php中一样,我想通过使用检查会话数据的头文件include来检查用户是否登录。我不想在将数据传递到视图文件时在每个控制器中检查/写入检查代码 有人能告诉我怎么做吗 我不想在每个控制器中都执行以下操作: //Controller: if($this->session->userdata('loggedin'){ $data['loggedin'] = $this->session-
//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');
}
}
}
非常感谢你。我想我和我的控制器一起工作了,非常感谢。我想我和我的控制员一起工作了谢谢你们的回应。。就像你们在这里说的一样谢谢你们的回复。。就像你们在这里说的那样。