2010-02-08 62 views
2

我正在嘗試使Auth模塊在登錄頁面上用複選框「記住」用戶會話。會發生什麼是沒有創建cookie,只有會話通常。我注意到了user_tokens表,但根本沒有看到使用user_token模型的方法。我確實通過(bool) TRUE作爲第三個參數login()方法,但沒有區別。記住與Auth模塊的會話嗎?

這是功能完整的全部或我有overwritting Model_Auth_User的login()方法來添加自己的?

這樣做的最佳做法是什麼?

回答

3

Answer from the Kohana forum (credit to biakavero)粘貼在這裏以供參考:

  1. 呼叫Auth::instance()->login()$remember = TRUE
  2. DB令牌用於創建當前用戶。產生Cookie authautologin
  3. 銷燬用戶對象:Session::instance()->delete('auth_user'); // dont call logout() method as it will delete cookie & token
  4. 呼叫Auth::instance()->auto_login()和檢查Auth::instance()->get_user() // should return Model_User object
+0

任何想法,爲什麼這不會頁是$ _POSTed與閃光燈(SWFUpload的)上運行? – handsomeGun 2010-08-14 16:46:46

+0

@handsomeGun,因爲swfupload不會發送會話的cookie。您需要以其他方式傳遞它,並可能將其抓在腳本中並使用傳遞的密鑰加載會話。 – 2010-11-16 08:32:58

+0

這正是我當時所做的。謝謝 ;-) – handsomeGun 2010-11-16 17:00:50