2012-11-29 17 views
1

我工作的一個任務,並就遇到了這個奇怪的問題。我的活動會話將不加載,返回WSOD - 笨

所以說我輸入用戶名/密碼,我現在登錄。我去不同的網站,並希望返回到我登錄到網頁。這是我如何照顧這種情況:

//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

這可能是我個人的偏好,但如下我將重寫代碼:

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()時未登錄用戶我個人的偏好是不重定向登錄的用戶返回到登錄,在屏幕上,如果他們試圖訪問需要授權的網站的一部分。

+0

感謝老闆,我沒有使用上面的代碼,而不是你之前的評論讓我如上面的代碼將加載由於某種原因,這兩種觀點(normal_screen和主頁)。我使用了一個if/else語句。再次感謝 – a7omiton