2013-06-29 50 views
-3

我一直在爲這一整天掙扎,還沒有找到答案。我正在使用CodeIgniter。如何在檢查登錄時防止重載循環?

問題是,當人到達主頁時,我想檢查他們是否已登錄。如果他們不是,我希望他們能夠查看主頁。如果是,他們應該直接進入儀表板。

我知道問題是索引函數反覆運行導致重定向,但我一直沒能找到解決方法。

這是完美的工作,直到我刪除index.php,並使我的主頁我的登錄頁面。

這裏是我的代碼:

function index(){ 
    if (!$this->ion_auth->logged_in()) 
    { 
     redirect('home', 'refresh'); 
    } 
    elseif (!$this->ion_auth->is_admin()) 
    { 
     //redirect them to the home page because they must be an administrator to view this 
     redirect('user/dashboard', 'refresh'); 
    } 
    else 
    { 
     //set the flash data error message if there is one 
     $this->data['message'] = (validation_errors()) ? validation_errors() : $this->session->flashdata('message'); 

     //list the users 
     $this->data['users'] = $this->ion_auth->users()->result(); 
     foreach ($this->data['users'] as $k => $user) 
     { 
      $this->data['users'][$k]->groups = $this->ion_auth->get_users_groups($user->id)->result(); 
     } 

     //$this->_render_page('auth/index', $this->data); 
     redirect('user/dashboard', 'refresh'); 
    } 
} 

我的默認控制器是AUTH(跟蹤登錄)。讓我知道是否需要提供任何其他代碼段。

任何幫助將不勝感激。謝謝!

+5

此問題似乎是題外話題,因爲它是關於要求幫助搜索現有的答案或外部資源。 – hakre

+0

我一直在尋找幫助和答案,並且一直未能找到解決方案。我真的被卡住了。 –

+0

是的,但這不符合在此尋求幫助的理由。這個網站是關於編程問題。當你問你是否可以提供更好的:是的,你可以:看到這個清單? http://meta.stackexchange.com/questions/156810/stack-overflow-question-checklist-將此添加到您的問題中,並在清單的每個要點下面寫下您所做的事情。 – hakre

回答

0
if (!$this->ion_auth->logged_in()) 
{ 
    redirect('home', 'refresh'); // remove this line 
    //load your view files instead 
    // the redirect is loading this index function repeatedly 
}