创建未设置的 cookie 按钮
Posted
技术标签:
【中文标题】创建未设置的 cookie 按钮【英文标题】:Create unset cookie button 【发布时间】:2011-07-05 21:36:01 【问题描述】:我已经使用 php 创建了一个 cookie,现在我需要创建一个用户可以单击以注销的按钮。
这将是取消设置 cookie 的 php 代码:
unset($_COOKIE['access_token']);
但我对如何制作按钮功能非常困惑。有人可以帮我吗?
非常感谢
【问题讨论】:
取消设置 $_COOKIE 实际上不会删除 cookie。但是,您可以使用过去设置的到期日期覆盖它。 【参考方案1】:if(isset($_GET['logout']))
unset($_COOKIE['access_token']);
header('Location: /');
exit;
现场
<a href="?logout">logout</a>
【讨论】:
正如其他人所说,这实际上并没有删除cookie。setcookie('access_token', null, 0, '/');
会。【参考方案2】:
顺便说一句,你可以通过设置过去的时间来删除cookie
setcookie($_COOKIE['access_token'],'',time()-3600);
你应该取消会话
session_destroy()'
【讨论】:
感谢所有人,对不起,我试图让它变得简单,但我让它变得太简单了。我的网络中有一个用户登录的会话,并且登录到 Foursquare。我想要做的是建立一个按钮来从 Foursquare 注销但不是从我的会话中注销..你是对的,取消设置 cookie 不起作用:( @user638009:如果有会话,您必须为该站点(Foursquare)使用session_unset
和session_destroy
。 Session 和 cookie 都不一样
好的,但是我如何在我的会话和 Foursquare 会话之间做出区别?在 Foursquare 身份验证代码中,没有什么叫做 session..。【参考方案3】:
实际上最好这样做:
setcookie("myCookie", null, 1); //# This will expire / delete *immediately*
如果你使用
setcookie("myCookie", null, 0), the cookie is still valid until they close their browser.
【讨论】:
以上是关于创建未设置的 cookie 按钮的主要内容,如果未能解决你的问题,请参考以下文章