2010-08-08 73 views
0

這是控制器中的一項功能,可讓用戶註銷。但是如何讓用戶做到這一點?我認爲答案是在一個視圖中放置一個超鏈接。但我無法弄清楚如何創建一個調用該函數的超鏈接。 (我寧願不建一個形式...)Source for this code讓用戶調用CodeIgniter中的控制器功能

class Auth extends Controller { 
    .... 
    function logout() 
    { 
    $this->data['title'] = "Logout"; 

    //Library function 
    $logout = $this->ion_auth->logout(); 

    //redirect them back to the page they came from 
    redirect('auth', 'refresh'); 
    } 
    .... 
} 

回答

2

只需在您的視圖中編寫超鏈接。在笨

echo anchor('auth/logout', 'Logout'); 

URI路由缺省如下,第一URI段對應於控制器名稱和所述第二對方法名的慣例。如果有人關注鏈接,則會調用Auth控制器類的註銷方法。

生成超鏈接的錨函數是url helper函數的一部分。請記住在代碼中通過自動加載或顯式加入url助手:

$this->load->helper('url'); 
+0

謝謝,這是2個有價值的回答之一。試圖在404'頁面未找到'的結果。我將要拆除我的.htaccess指令,它們似乎使一切都變得困難。 – Smandoli 2010-08-08 19:20:01

+0

可能是圍繞index.php重定向的嘗試讓我無法​​得到這個。謝謝。 – Smandoli 2010-08-08 20:11:14

+0

你在Auth類中有刷新方法嗎?也許它註銷後導致404 ... – 2010-08-08 23:24:58

1

相關文檔是在這裏:http://codeigniter.com/user_guide/general/routing.html

本質上講,你要創建的鏈接http://site.com/Auth/logout。這將調用您的控制器上的功能。

+0

謝謝,這是2個有價值的答案中的1個。試圖在404'頁面未找到'的結果。我將要拆除我的.htaccess指令,它們似乎使一切都變得困難。 – Smandoli 2010-08-08 19:20:29

相關問題