Cookie不会删除

时间:2013-02-11 12:23:01

标签: php cookies

所以我在index.php上有这段代码:

<?php if(isset($_POST['cookie'])) { setcookie("RememberMe", "Yes", time()+1209600);  } ?>

如果用户选中了“记住我”框,则会设置名为RememberMe的Cookie,为期2周。这部分工作正常。

现在我遇到的问题是当他们按下注销时删除这个cookie。

按下注销后,它们会被重定向到logout.php,其中包含以下代码:

<?php include_once('config.php');
include_once('functions.php');

unset($_COOKIE['RememberMe']);
setcookie("RememberMe", "", time()-3600);
$_SESSION = array(); session_destroy(); 


?> 

<meta http-equiv="refresh" content="0;../index.php"> 

但是出于某种奇怪的原因,不会删除cookie?关于为什么的任何想法?

4 个答案:

答案 0 :(得分:2)

您可能想要检查Cookie设置的路径是否正确。默认情况下,PHP将cookie路径设置为它所设置的目录,并且它将不可用(也不可能删除)来自不同的位置。

更多提示:

  • 无需取消设置$_COOKIE$_SESSION
  • 而不是使用带有HTTP标头的元标记重定向重定向:

    header('Location: /index.php'); // or whatever is the path you want to redirect to
    

答案 1 :(得分:0)

不是最干净但是 检查时区是否正确 确保您正在使用正确的cookie(区分大小写) 他们所有人都没有写过cookie,无论如何都要核对它  所以......

Setcookie('mycookie')//用空白条目核实cookie

答案 2 :(得分:0)

Cookie取消有时可能需要与设置时相同的时间值。

setcookie("RememberMe", "", time()-1209600);

答案 3 :(得分:0)

删除此行

unset($_COOKIE['RememberMe']);