回答
你不能強迫瀏覽器刪除任何Cookie相關聯的文件,因爲你不能保證真正有這樣一個文件 - 關於餅乾的瀏覽器和Web服務器之間的合同數據將在合格的請求中呈現。
您聲明您「不想等待Cookie過期」,但是Cookie過期是指示數據不再需要的正確方法,不應在將來的請求中顯示,而在大多數情況下案例確實轉化爲瀏覽器刪除文件。
因此,要刪除一個cookie,將其到期時間設置爲過去。在PHP中,這是通過setcookie()
完成的。
這是最接近的答案(即第1段)。謝謝。 – 2009-09-22 13:00:25
是的。使用setcookie()
並將您希望刪除的cookie的到期日期設置爲過去的時間。用戶的瀏覽器應該自動刪除它。
我爲我寫了這個插件並正常工作。
(function($) {
$.cookieAllDelete = function(doc)
{
var cookie_date = new Date();
var cookies = null;
cookies = doc.cookie.split(';');
cookie_date.setTime(cookie_date.getTime() - 1);
for(var i=0; i < cookies.length; i++)
{
var cookie_name = cookies[i].split('=')[0];
try {
if (cookie_name.length > 0)
doc.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
} catch(ex) {}
}
}
})(jQuery);
jQuery.cookieAllDelete(document);
嘗試這樣的事情來刪除所有cookie:
foreach ($_COOKIE as $name => $value) {
setcookie($name, '', 1);
}
價值1
是到期值,它代表了一個後第二的開始Unix時間劃時代的。所以它總是已經過期。
我認爲你必須使用相結合的辦法:在過去
- 集過期回來的路上(由Chacha102的建議)
- 使用JavaScriptto刪除了document.cookie DOM對象條目(所建議安德烈斯descalzo)
有與混合的方法去2個很好的理由:
- 可以在瀏覽器中禁用JavaScript
- 並非所有cookie都可以在document.cookie中看到某些現代瀏覽器支持cookies的httponly標誌。 PHP擁有的HttpOnly餅乾支持,請http://www.php.net/setcookie
'似乎刪除cookie比看起來更困難。
setcookie($name, '', 1);
不會這樣做。 ''
爲空,setcookie
可以忽略整個指令。
而且設置時間過去,有時允許cookie來保持其到期時間較新,1
我處理這對現在的價值。我不知道它來自哪裏,但它在那裏。
我使出
setcookie($name, '0', 9000000000);
這保證了cookie設置爲可解析爲假的值,它比以往的任何值更新。
如果有人對此行爲有任何瞭解,請告訴。
我懷疑困難在於這樣一個事實,即當值未指定時,setcookie
的域和路徑值保證從執行到執行相同。
我知道這樣的cookie不會在2038年左右過期。
或者,如果cookie的最新到期日期是已知的,則需要僅在1秒之後設置。
在我的情況下,setcookie不工作的原因是因爲我沒有對第四個參數使用相同的位置。因此,請確保您使用第4個參數的相同位置,以便成功刪除cookie – Antony 2012-03-22 23:19:13
我發現您必須設置相同的參數來設置和刪除cookie。 Set Cookie:setcookie($ name,$ uid',$ time,'/','',0); - 刪除Cookie:setcookie($ name,$ uid',1,'/','.domain.name',0);將不起作用,第五個參數必須相同。 – Grant 2012-08-16 09:08:07
打印$ _COOKIE數組,取消設置密鑰:unset($ _ COOKIE [$ name]); – ShivarajRH 2017-02-28 09:21:49
- 1. 從瀏覽器中刪除HTTP_COOKIE cookie
- 2. 刪除瀏覽器Cookie(跨域)
- 3. 從Eclipse的內部Web瀏覽器中刪除cookie和緩存
- 4. 如何從瀏覽器的cookie存儲中刪除sessionid
- 5. 如何從瀏覽器中刪除cookies?
- 6. 使用Javascript刪除瀏覽器中的Identity Server Cookie
- 7. Cookie和瀏覽器
- 8. 如何從瀏覽器中刪除JSESSIONID cookie,並使用HttpOnly標誌設置
- 9. 刪除或通過Javascript重置瀏覽器cookie
- 10. Javascript刪除android web瀏覽器上的cookie
- 11. 瀏覽器重新啓動後奇怪的Cookie被刪除
- 12. 點擊事件沒有刪除瀏覽器cookie
- 13. 當我關閉瀏覽器時Cookie被刪除?
- 14. 如何在瀏覽器關閉時刪除Cookie?
- 15. 使用javascript刪除瀏覽器的所有Cookie
- 16. 的JavaScript Opera瀏覽器 - 刪除會話cookie和重載頁面
- 17. 瀏覽器關閉後驗證/會話cookie刪除
- 18. 如何以選擇性的方式刪除瀏覽器Cookie
- 19. 在javascript中刪除瀏覽器緩存
- 20. 刪除瀏覽器內存中的CSS
- 21. 在瀏覽器中刪除數據
- 22. Cookie--爲什麼使用PHP代碼刪除瀏覽器後的Cookie顯示
- 23. 從Flex訪問瀏覽器Cookie
- 24. 在php中跨瀏覽器cookie。在不同瀏覽器之間傳遞Cookie
- 25. 瀏覽器cookie問題
- 26. 閱讀瀏覽器Cookie ... jQuery
- 27. 瀏覽器cookie問題
- 28. 如何在瀏覽器中從內存中刪除圖像
- 29. 如何從壁虎瀏覽器中刪除安全消息框
- 30. 如何從我的瀏覽器中刪除yandex工具欄?
您可以「禮貌地要求」瀏覽器通過將其值設置爲空字符串或將過期時間設置爲過去的某個日期或使用$ cookie-> delete()從https中刪除cookie ://github.com/delight-im/PHP-Cookie – caw 2016-07-13 00:26:18