我的活动会话不会加载,返回WSOD - CodeIgniter

时间:2012-11-29 22:56:21

标签: codeigniter session

我正在完成一项任务并遇到了这个奇怪的问题。

所以说我输入用户名/密码,现在登录。我去了另一个网站,想要返回我登录的网页。这是我实施照顾这种情况的方式:

//Controller

public function index()
    {

        $loggedin = $this->alibrary->is_loggedin();


    if ($loggedin === false) 
    {
        $this->load->view('normal_screen');
    }

    if ($loggedin === true)
    {
        $this->load->view('homepage');
    }
}

但如果我之前登录并返回网页,我会看到一个空白屏幕。但是当我没有登录时,它会显示正常的屏幕。我不知道为什么我会得到一个空白页面,有人可以解释一下吗?感谢

1 个答案:

答案 0 :(得分:1)

这可能是我个人的偏好,但我会按如下方式重写您的代码:

public function index()
{
   $loggedin = $this->alibrary->is_loggedin();

   // redirect non logged in users to another page
   if (!$loggedin) {
        redirect('your/url/to/normal_screen', 'location');
   }

   // If they get this far we can assume they are logged in, so load the view
   $this->load->view('homepage');

}

当用户未登录时,您会注意到我使用redirect()。我个人的偏好是,如果他们尝试访问网站的某个部分,则会将未登录的用户重定向回登录屏幕这需要授权。