0
setcookie("userloggedin",$username);
setcookie("userloggedin",$username, time()+(60 * 20));

以上是用户登录时使用的 cookie,现在有几个用户告诉我,他们在使用过程中不断被从网站中删除。我很困惑为什么,我的 cookie 设置不正确?我的理解是设置为 20 分钟。

这是运行 20 分钟然后结束,还是像我相信的那样运行,每次我在其他页面上调用 cookie 时,再次重置为 20 分钟。

4

3 回答 3

0

也许问题与 PHP 会话有关。24分钟后即可销毁。尝试将其添加到您的 .htaccess 文件中:

php_value session.gc_maxlifetime 3600
于 2013-09-19T10:13:01.750 回答
0

你确定你打电话给他们,而不仅仅是在登录时。更有可能您只有在他们登录时才拥有它,然后他们被启动然后重新登录以重置 cookie。

如果您调用它们,它应该可以工作,它每次都会覆盖它们并将它们保持在 20 分钟。也许显示他们被调用的代码?

你也应该只需要

setcookie("userloggedin",$username, time()+(60 * 20));
于 2013-09-19T10:18:19.550 回答
0

基本上,第一条语句将在浏览器打开的时间内创建 cookie。第二个语句是告诉 Apache 在 20 分钟后使 cookie 过期。这就是您的用户被注销的原因。

于 2013-09-19T10:22:57.597 回答