删除cookie而不离开浏览器!

时间:2010-07-20 16:01:12

标签: php cookies

HEY GUYS

删除cookie在php中是一件容易的事,但是问题是直到我从浏览器中删除它仍然存在

setcookie("PHPSESSID", false);
setcookie("PHPSESSID","",time()-31536000); 

任何方式删除此cookie而无需关闭浏览器?!

那你觉得怎么样?!

2 个答案:

答案 0 :(得分:2)

Cookie标头仅在用户提交新页面时立即发送。因此,只是取消设置浏览器服务器端不会在客户端上删除它。

还要注意域名。您应该始终使用第四个参数为您网站上的所有路径设置Cookie。如果不这样做,子文件夹中的cookie可能仍然存在。

您可以使用某些JavaScript函数或Firefox的Web Developer Toolbar设置Cookie。

答案 1 :(得分:1)

正确销毁会话并将会话cookie var设置为过去过期。

从会话破坏的PHP.net手册:

    <?php
// Initialize the session.
// If you are using session_name("something"), don't forget it now!
session_start();

// Unset all of the session variables.
$_SESSION = array();

// If it's desired to kill the session, also delete the session cookie.
// Note: This will destroy the session, and not just the session data!
if (ini_get("session.use_cookies")) {
    $params = session_get_cookie_params();
    setcookie(session_name(), '', time() - 42000,
        $params["path"], $params["domain"],
        $params["secure"], $params["httponly"]
    );
}

// Finally, destroy the session.
session_destroy();
?>