检查Codeigniter中另一个控制器的会话

时间:2015-06-03 12:30:39

标签: php codeigniter

用户登录后,我设置变量is_logged_in=true,但在其他控制器中,如何在codeigniter中检查is_logged_in是否为真? 这是我的登录代码:

public login_con extends CI_Controller
{
    public function login()
    {
        is_logged_in=true;
    }
}

我想在另一个控制器中查看此is_logged_in,以便如何编写代码?

2 个答案:

答案 0 :(得分:0)

会话是最好的解决方案。您可以阅读codeignitor session

// set value in session 
$this->session->set_userdata('is_logged_in', true); 

进入其他控制器

$is_logged_in  = $this->session->userdata('is_logged_in'); 

还请确保您已加载会话库。

$this->load->library('session');

答案 1 :(得分:0)

自动加载applications/config/autoload.php首先要添加会话库

$autoload['libraries'] = array('session');

这将包括每页的会话。

现在你的控制器文件

<强>控制器1

    public login_con extends CI_Controller
    {
        public function login()
        {
           //here you set session like that
           $data['is_logged_in'] = TRUE;
           $this->session->set_userdata($data);
        }
    }

在这里,您可以在其他控制器上获得is_logged_in会话

<强>控制器2

public your_con extends CI_Controller
        {
            public function your_function()
            {
               //here you get session like that
              if($this->session->userdata("is_logged_in"))
                {
                  // your code here
                 }
            }
        }