如果我想讓COOKIES永久儲存
如何通過setcookie來實現 是給expire一個很大的值嗎?
還有 如果想儲存1個月 就是按30天算 60*60*24*30 還是有什麼精確的計算方法?
回複討論(解決方案)
cookie不能永久儲存
至於你說的精確的方法不知道是指什嗎?
我的意思是
網上那些程式設定儲存一個月的時候
只是粗略地用60*60*24*30 這樣表達30天
還是會根據每個月份有幾天 來計算
不過我估計是直接按30天算了
呵呵
暈。何必計較這麼多。。。。
暈。何必計較這麼多。。。。
cookie是儲存在用戶端的,使用者清理緩衝時,都清掉了。
計較這麼多,不嫌累麼!
暈。何必計較這麼多。。。。
cookie是儲存在用戶端的,使用者清理緩衝時,都清掉了。
計較這麼多,不嫌累麼!
不是計較
剛學習PHP
所以來問問 呵呵
這個答案就是
你喜歡..
總之cookie是不能永久儲存的,存東西,你要把資料存到資料庫裡。
cookie 你就存該使用者資訊的ID即可,需要時,到資料庫裡取。
方便,而且不產生漏洞。
還有存cookie,
重要的資料必須加密
60*60*24*30 是一個運算式,最終傳入的參數是 2592000
這麼寫主要是便於閱讀,一小時3600秒,一天24小時,一個月30天。
至於你說的如果考慮每月實際天數的話,就有點麻煩了,你可以搜尋一下. PHP擷取每月實際天數
bool setcookie ( string name [, string value [, int expire [, string path [, string domain [, bool secure]]]]] )
expire Cookie 到期的時間。這是個 Unix 時間戳記,即從 Unix 紀元開始的秒數。換而言之,通常用 time() 函數再加上秒數來設定 cookie 的失效期。或者用 mktime()來實現。 time()+60*60*24*30 將設定 cookie 30 天后失效。如果未設定,cookie 將會在會話結束後(一般是瀏覽器關閉)失效
這是在執行一次 setcookie 後的情況,如果使用者每次訪問時都執行一次的話,不就永久了嗎?
60*60*24*30 是一個運算式,最終傳入的參數是 2592000
這麼寫主要是便於閱讀,一小時3600秒,一天24小時,一個月30天。
至於你說的如果考慮每月實際天數的話,就有點麻煩了,你可以搜尋一下.PHP擷取每月實際天數
我也覺得 還是30天來的方便
bool setcookie ( string name [, string value [, int expire [, string path [, string domain [, bool secure]]]]] )
expire Cookie 到期的時間。這是個 Unix 時間戳記,即從 Unix 紀元開始的秒數。換而言之,通常用 time() 函數再加上秒數來設定 cookie ……
如果cookies用來儲存登陸資訊的
每次都設定setcookie 那不是得登陸了才能設定麼 相當於沒COOKIES
你為什麼一定要在登入後才寫 cookie 呢?
為什麼不可以在驗證登入資訊有效時也寫 cookie 呢?
可以計算出每個月或者當前月的天數,當然了一般都是設定一個固定的天數,例如把一個月當成28或者30天,不然的話,你在27號設定儲存一個月,難道28好就失效嗎,顯然是不成立的,所以你只需要將其設定成固定的30天就行了,而永久有效話簡單的cookie是不行的,除非用其它的方式,如資料庫標識等等
function setCookies(name,value){var name = "xifashui"; var Days = 30; //此 cookie 將被儲存 30 天 exp.setTime(exp.getTime() + Days*24*60*60*1000); document.cookie = name +"="+ escape(value) +";expires="+exp.toGMTString();alert("放入成功")}function getCookies(name){ var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)")); if(arr != null)alert(unescape(arr[2]));}