1

我正在做一个任务,遇到了这个奇怪的问题。

假设我输入了用户名/密码,现在已经登录。我去了一个不同的网站,并想返回到我登录的网页。这就是我实施处理这种情况的方式:

//Controller

public function index()
    {

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


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

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

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

4

1 回答 1

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()在用户未登录时使用。我个人的偏好是,如果未登录用户尝试访问需要授权的站点的一部分,则将他们重定向回登录屏幕。

于 2012-11-30T02:32:31.980 回答