iT邦幫忙

0

請問php cookie部份

請問使用cookie部分要怎麼將登入會員的狀態記住
而不會導致關閉瀏覽器,還要重新登入一次??

1
weiclin
iT邦高手 4 級 ‧ 2016-05-16 17:56:37

使用者有權力決定他們要不要保留 cookie 來保持登入

所以就算有方法, 也不建議你這樣做, 這是很不好的作法。

如果就是會員反應他們不能保持登入, 那你可以寫個教學教他們怎樣開啟保留 cookie 的功能。

yugochen iT邦新手 5 級 ‧ 2016-05-16 18:07:10 檢舉

但公司要求用cookie寫保持登入,還有開啟保留cookie的功能 ,要如何開啟??

weiclin iT邦高手 4 級 ‧ 2016-05-16 22:48:07 檢舉

你可以設定 cookie 要保留多長的時間, 但是使用者也隨時可以忽略你的設定去把他刪掉, 在 php 你只要將資料寫入 session, 就自動會產生 cookie 了

weiclin iT邦高手 4 級 ‧ 2016-05-16 22:49:09 檢舉

另外瀏覽器有個關閉時清除 cookie 的設定, 你若想保留 cookie, 這個功能必須關閉

0
wiseguy
iT邦超人 1 級 ‧ 2016-05-17 08:10:05

只要在設定 cookie 時,把時效 ( setcookie() 第3個參數 expire 設長一點的日期,比如 2050-12-30,那麼,只要 user 端不清除 cookie,這個 cookie 就會一直有效。
而在 server 端,你也要長期維護 session 不被清掉,比如改用 DB 來存 (PHP 預設用 file 存 session ),這樣才會讓 user 的登入狀態一直有效。
只不過,登入狀態一直留著,難免有安全性問題,所以還是要有一個合理的失效時間比較好。

0
窮嘶發發發
iT邦高手 1 級 ‧ 2016-05-17 09:11:04

用 SESSION 啊,跟 COOKIE 一樣的功能,但 SESSION 是保留在伺服器的

我公司內網就是用 SESSION,只要在時間內,就算電腦關機重開,仍然保持登入的狀態

除非 IP 改變,否則 SESSION 在,登入資訊就存在

PHP SESSION

我要發表回答

立即登入回答