2012-11-22 337 views
6

我使用PHP代碼,並試圖設置cookie,如下圖所示:如何設置永久性的Cookie

setcookie("_GuestID",$userID,time() + (20 * 365 * 24 * 60 * 60)); 

我發現,餅乾只是瀏覽器的收盤後到期。我想讓它持續很長時間,我該怎麼辦。請給出你的建議。

感謝

+0

您是否從瀏覽器中檢查了Cookie是否已設置?到期日是什麼? – Andrew

+0

您設定了將來某個點的到期時間。沒有「永久」餅乾這樣的東西。只是「很長一段時間不會過期的曲奇」。 –

+0

Cookie只要你想要(有一個最大 - 谷歌它),或者直到客戶端刪除them_。客戶甚至可能一起拒絕他們。會話可能值得一看(雖然他們也使用cookie) –

回答

5

正如已經指出的,檢查如果cookie實際上是被你的瀏覽器設置(你的語法正確顯示)。

只要您設置了Cookies,Cookie就會一直存在。除非有特定的到期要求(通常要短得多),否則我一直使用一年作爲整個週期。

使用的strtotime功能,使他們更容易閱讀:

setcookie("cookieName1", $value1, strtotime('+1 year')); 
setcookie("cookieName2", $value2, strtotime('+30 days')); 

有如何使用他們在setcookie manual page這是值得花時間去閱讀許多例子。

2

有沒有特別的方法來設置永久性cookies。 它與您設置普通Cookie的方式相同。 帶有過期日期的Cookie稱爲永久性。