背景图

php清除指定cookie

观看: 78
评论: 0
2024-11-23 21:11:50

今天做退出登录功能时遇到了一个神奇的现象,怎么改都没有办法清除用户的user_key这一Cookie,我一开始是这样写的:

退出: setcookie('user_key', "",time() - 3600, "/");登录: setcookie('user_key', $value ,time() + 3600, "/", "jiaohui.fun");

看出什么问题来了吗?显然,这两行代码的给的参数不一样,一个多了一个网址: jiaohui.fun 一个退出反而没有,这就是导致登录可以但退出登录反而不行的主要原因了,也就是说,我们需要让登录的setcookie和退出登录时的setcookie所给的参数相同,像这样:

登录: setcookie("新的cookie", "", time() + 此处为秒, "cookie生效地址,通常为/", "你的网址");退出: setcookie("新的cookie", "", time() - 3600, "cookie生效地址,通常为/", "你的网址");

这样就成功清除了用户下指定名称的cookie了,当然,为了使退出登录功能更规范,让我们添加一点点小东西:

$user_key = $_COOKIE["user_key"];if (empty($user_key)) {  die("你没登录你退个damn啊");} else {  setcookie("user_key", "", time() - 3600 ,"/", "jiaohui.fun");  echo "ok";}

如何,是不是非常的完美了呢?

猜猜我是谁 个人主页

看看五星评论家们怎么说的吧:

发布