2012-03-06 113 views
-3

oK,因爲我原來的問題對大多數人沒有意義,我會詳細解釋。我有一些會員系統是通過基於codeigniter框架的一些教程製作的。在我的主頁上,我有3個按鈕分別包含登錄,註冊,忘記通行證。當我測試登錄並以用戶身份輸入我的詳細信息時,我仍然可以看到登錄按鈕,這是沒有道理的,因爲它應該在我登錄時隱藏。對於我上面提到的其他功能也是如此。用戶登錄時隱藏註冊和登錄按鈕?

現在我正在嘗試一些方法,如if($_SESSION['user'] == "") {來實現我的目標,但沒有任何成功。

任何想法如何正確地做到這一點?

感謝

+0

好吧,我做了一些更新的問題。我想現在很清楚。 – 2012-03-06 16:04:57

+0

您猜錯了,此代碼不包含相關的代碼。我們不知道您是如何標記用戶已登錄的,因此不可能說出如何對未知數量做出反應。這個問題不清楚。 – 2012-03-11 18:40:37

+0

這很好,我通過了,並可以解決它我自己的。不管怎麼說,多謝拉。 – 2012-03-12 08:09:05

回答

3
<div id='nav'> 
<?php 

if(is_logged_in()) 
{ 
    if(is_admin()) 
    { 
     echo anchor('admin','Admin Dashboard'); 
    } 

    echo anchor('user/logout','Logout'); 
    echo anchor('users/profile','Profile' . '&nbsp;[' . $_SESSION['user_name'] . ']'); 

} 
else 
{ 
    echo anchor('user/login','Login'); 
    echo anchor('user/signup','Signup');       
} 

echo '&nbsp;' . anchor(base_url(),'Home'); 
?> 

</div> 
+0

非常感謝@Marian的幫助。它與我所需要的非常接近。現在唯一的問題是,我不知道如何單獨設置按鈕中的代碼,以便他們根據用戶登錄/註銷顯示或隱藏。 – 2012-03-06 16:15:41

0

我不明白的問題,因爲如果你寫的登錄系統或當用戶編程登錄就可以知道......真的應該沒有問題。你可以根據這個「登錄」變量從控制器加載不同的視圖,或者將變量傳遞給你的視圖,該視圖基本上是$ displayLogin ...如果是,顯示登錄信息,如果不是,則不顯示。

需要了解更多關於您的設置以明顯提供更多有用的信息。

+0

我對原來的問題做了一些修改,所以現在應該清楚了,我想。謝了哥們。 – 2012-03-06 16:21:19

1

如果您使用被記錄在

if(!isset($_SESSION)){ 
    //echo links 
} 

會議確保未設置()所有的$ _SESSION瓦爾在註銷

+0

謝謝@Makura,在這種情況下使用什麼變量shoudl?任何罰款?或基於用戶的var?好吧,如果我想讓這發生在按鈕鏈接上,怎麼辦? – 2012-03-06 16:17:24

+0

任何變量,您的登錄腳本使用,如果不確定使用$ _SESSION沒有var – MakuraYami 2012-03-07 08:43:19

+1

事實證明,使用tank_auth會話功能解決了這個問題。謝謝 – 2012-03-07 19:39:11