我在Chrome中删除特定Cookie时遇到问题,调试器根本没有提取任何内容,尽管这与另一个SO线程中的代码相同
reset.php
<?php
session_start();
?>
<html>
<head>
<script type="text/javascript">
// Option 1 - set cookie to null
//$.cookie('welcome_<?php echo $_SESSION['myusername']; ?>', null);
// Option 2 - delete specific cookie
delete_cookie('welcome_<?php echo $_SESSION['myusername']; ?>');
// relocate back to index.php
window.location = 'index.php';
</script>
</head>
<body>
</body>
</html>
我试图通过delete_cookie
直接删除Cookie,并将Cookie设置为null
,两者都没有结果。
我对JavaScript不擅长,如果有人能指出我正确的方向,我将不胜感激。必须简单。
由于
答案 0 :(得分:2)
我使用了一种名为JSCookie的东西。您可以轻松地在JavaScript中执行Cookies.remove('Cookie_name');
!
1. JSCookie Repository
2. JSCookie Download
答案 1 :(得分:1)
您可以使用javascript删除您的Cookie,方法是将到期日期设置为小于当前时间的时间,如下所示 -
document.cookie = name + '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
你可以使用php删除cookie到 -
unset($_COOKIE['cookiename']);
// or you may also remove cookie by setting cookie less than current time
setcookie('cookiename', null, time()-3600);
答案 2 :(得分:1)
这可能对您有所帮助:设置,获取和删除cookie的3个功能
function setCookie(key, value) {
document.cookie = key + '=' + value;
}
function getCookie(key) {
var keyValue = document.cookie.match('(^|;) ?' + key + '=([^;]*)(;|$)');
return keyValue ? keyValue[2] : null;
}
function delete_cookie(name) {
document.cookie = name + '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}
删除Cookie的一种简洁方法是清除$_COOKIE
值和浏览器Cookie文件:
if (isset($_COOKIE['key'])) {
unset($_COOKIE['key']);
setcookie('key', '', time() - 3600, '/'); // empty value and old timestamp
}
将值设置为&#34;&#34;到昨天(或过去的任何日期)的到期日
setcookie("hello", "", time()-3600);
然后,cookie将在下次加载页面时到期。