2012-05-09 5 views
2

私はトークンを使用しません。Kohana 3 Auth Moduleで現在ログインしているユーザーを一覧表示するには?

私はこのような現在使用ユーザーを取得することが可能であることを知っている:

$user = $this->get_user(); 

私は、任意のユーザーがログインしているかどうかをチェックする機能が必要:)

私はこのような何かをしたい:

//extending Model_User: 
public function is_logged() 
{ 
//return true or false 
} 

//using in controller 

$user = ORM::factory('user'); 
$user->find($this->request->param('id')) 

if($user->is_logged()) 
{ 
    //do_something(); 
} 

答えて

1

認証モジュールは、ユーザーセッションに関する情報を保存しません。 (user_id, login_time, last_update_time, user_fingerprint)のような表を作成する必要があります。 user_fingerprintは一意のトークンです(例:sha1(user_id + user_ip + user_agent))。 login/logoutの後にこの表を更新してください。 last_update_timeは、最後のユーザーアクティビティ(ページロード、Ajaxコールなど)のタイムスタンプを保存し、古い接続をタイムアウトでフィルタリングするために使用できます。

関連する問題