2017-01-17 111 views
1

我在PHP中設置了幾個cookie。其中一個設置時總是被刪除。這是我如何設置他們:爲什麼我的cookie已被刪除

setcookie("UserName",$_COOKIE['UserName'],time() + (60*60*24*7)); 
setcookie("KeepPost",'',time() + (60*60*24*7)); 

第一個被設置,並在本週到期,第二個被確定,但已被刪除,並於1970年

到期,我做的他們兩個人也一樣,即使在同一個地方,發生了什麼事情?

enter image description here

回答

2

你不能設置一個空值的cookie。退房docs常見缺陷部分:

如果值參數爲空字符串,還是假的,和所有其他的參數匹配前面調用的setcookie,然後指定名稱的cookie將被從遠程客戶端刪除。這是通過將值設置爲「已刪除」並將過期時間設置爲過去一年來實現的。

如果這是一個標誌,給它一個值爲1,所以它有一個值,不會被自動刪除。

setcookie("KeepPost", 1, time() + (60*60*24*7));