当用户从浏览器手动删除时,删除Cookie


Delete Cookie when user manually delete from the browser

在用户使用PHP 从浏览器手动删除cookie之前,有什么方法可以删除cookie吗

由于cookie存储在客户端,浏览器在请求头中发送cookie,
因此,如果用户从浏览器中删除cookie,那么您的脚本将不会收到该cookie
因此,在这种特殊情况下,您不需要从服务器端删除。

您可以取消设置:

<?php
    unset($_COOKIE['myCookie']);
?>

或者你可以为它设置一个过去的时间:

<?php
    setcookie("myCookie", "", time() - 3600);
?>

换句话说,只有您的域设置了cookie,您才能删除它。

function createCookie(name,value,days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+date.toGMTString();
    }
    else var expires = "";
    document.cookie = name+"="+value+expires+"; path=/";
}
function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        while (c.charAt(0)==' ') c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}
function eraseCookie(name) {
    createCookie(name,"",-1);
}

要删除cookie,请执行以下操作:

<a href="#" onclick="eraseCookie('GuessName');">delete</a>

是它的

 unset($_COOKIE['myCookie']);