setcookie('uid', $id);
1.如果第三參數不傳,是不是就是退出瀏覽器cookie就失效?
2.我用jquery的$ajax調用php,php裡執行了setcookie('uid', $id, $cookietime, '/', '.xxx.net', 0);
在$ajax success裡reload了頁面,為什麼取不到cookie?
而且在%temp%\..\Temporary Internet Files目錄下也看不到對應網站的cookie檔案。
回複討論(解決方案)
是我伺服器時間的問題。
現在好了。
另外問下。
我用setcookie('uid');刪除cookie
往複幾次。判斷就會失效了。這是什麼情況?
IE8有這個問題。。360Chrome沒有問題。。
setcookie('uid',null)
統一一下,不用這個setcookie('uid');
setcookie("uid", "", time() - 3600);比較標準
統一一下,不用這個setcookie('uid');
setcookie("uid", "", time() - 3600);比較標準
還是不行,IE8隻要登入再退出,再登入,就不能儲存COOKIE了。
不知道為什麼。我看了下discuz。
discuz自己寫了個dsetcookie來處理。
挽尊。。。。
因為你沒有設定範圍
login:
setcookie('uid', $dzid, $cookietime, '/', '.xxxx.net', 0);
setcookie('upd', $pass, $cookietime, '/', '.xxxx.net', 0);
logout:
setcookie('uid', '', $time - 3600, '/', '.xxxx.net', 0);
setcookie('upd', '', $time - 3600, '/', '.xxxx.net', 0);
在360Chrome可以反覆登入。
IE就不行,反覆登入最多2次,就不會再儲存cookie了。
必須要關閉IE重新開啟才行,我用的IE8測試的。
discuz也是用的setcookie嘛,就沒問題。
雖然外面封裝了一層dsetcookie,但貌似關係不大吧。