php cookie注销,注销后未设置php cookie

我正在建立一个可供某些用户登录的网站。我的代码创建了一个简单的cookie。 早些时候,我的代码可以正常工作并创建cookie,并允许用户登录。但是,在创建注销按钮并使用它之后,我似乎无法再次创建cookie(我的网站无法识别cookie,并且没有 当我检查时,cookie会显示在chrome中)。 我已经看过所有其他有关创建cookie以及无法创建cookie的线程,但是我无法弄清楚出了什么问题。

这是我创建cookie的代码:

$userStuff = array('name' => $username,'password' => $password);

$date_of_expiry = time() + 60 * 60 * 24 * 1 ;

setcookie("user", $userStuff, $date_of_expiry,"/" ) ;

我知道安全性非常宽松,我不应该将密码等直接存储在cookie中,但是我想首先处理其他事情。 此代码在任何html之前。

这是我的代码,其中我更改了cookie的到期日期以注销:

setcookie('user', $userStuff, time() - 3600, '/');

设置注销的过期时间

找到了问题。 PHP决定不希望在Cookie中使用数组...

我发现了错误。 显然,您要么不能在cookie中使用数组,要么就这次不允许我在cookie中使用数组。

谢谢保罗:P你夺走了我的50点声誉

别客气!;)

我知道这还有一点,但是为什么不使用$_SESSION? 它将带有会话令牌的cookie存储在客户端的浏览器中(运行session_start时),大多数数据存储在服务器端,这更加安全。 对于用户身份验证数据和令牌,这可能是一个更好的选择。

例:

//First thing init the session

session_start();

$_SESSION['username'] = $username;

$_SESSION['password'] = $password;

//Or retreive the data...

$username = $_SESSION['username'];

//Later when you want to log out just destroy the session:

session_destroy();

你好吗?

如果要删除Cookie,则应传递过去的日期,例如:

setcookie('user', $userStaff, time() - 3600, '/');

问候。

抱歉,这实际上是我所做的。 我不小心将我的较新代码粘贴到了此处,尝试在此处重置到期日期,以查看是否可以重新创建cookie。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值