2012-11-19 26 views
0

在drupal中,一旦用戶認證的會話啓動,並且直到該會話結束,用戶將不必重新進行認證。但在我的網站中,用戶可以重新進行身份驗證。並沒有任何錯誤信息。有可能發生嗎?我怎樣才能檢查用戶已經登錄和會話?用戶可以重新認證

我試圖讓所有的登錄用戶,但我不舒爾它會工作:

$result = db_query('SELECT u.uid, u.name FROM {sessions} s INNER JOIN {users} u ON u.uid = s.uid WHERE s.uid != 0')->fetch(); 

回答

0
user_is_anonymous() 

會告訴你,如果當前用戶登錄或不

另一種方法是使用全球$用戶

global $user; 
if($user->uid) 
    print('logged in'); 
else 
    print('logged out'); 

但是,這是不正常的,記錄的用戶可以再次訪問用戶/登錄。 Drupal通常會重定向到用戶的帳戶頁面。