我想要做的是记住我复选框。我已将其设置为如果为用户名设置了cookie,则会检查该复选框。我想要做的是,如果有一个cookie,但用户决定取消选中它以防万一其他人想要从同一台计算机访问他们的帐户然后它将删除cookie我不知道如何实现这一点这是我到目前为止所拥有的。
if (isset($_POST['remember'])) {
// Sets an expiration time for the cookie
$my_expiration = time()+60*60*24*100;
// Sets the cookie for the username
setcookie("username", $username, $my_exiration, "/");
} else {
setcookie ("username", "", time() - 3600);
}
答案 0 :(得分:3)
如果您将路径("/"
)添加到第二个setcookie()
来电,这将有效。由于您忽略了这一点,浏览器将cookie视为与先前设置的cookie不同的cookie,因此不会将其删除:
setcookie ("username", "", time() - 3600, "/");
(至少我认为这是出了什么问题。你实际上并没有问一个问题,你只是把代码扔到那里然后说“我正在做这个”而没有说明是否有任何东西没有像你期望的那样工作。)
答案 1 :(得分:2)
将其设置为null setcookie(“username”,null,0,“/”);
答案 2 :(得分:0)
设置和删除都必须有路径
setcookie("ST",$_COOKIE['ST'],time()+1000,'/'); //for creation
setcookie('ST',NULL,-1,'/'); //for deletion
我玩这个直到完成它。 希望它有用。