douhan1860 2017-05-10 19:29
浏览 87
已采纳

为什么cookie过期?

On my website I set some cookies when users login so I can remember them so they don't have to login every time they re-visit the website.

I set the cookies in php using the following code:

setcookie("last_login", $loginID, time() + (86400 * 30), "/"); // 86400 = 1 day

And in my php.ini I even got this setting:

session.cookie_lifetime = 2592000

But even with all this when i close down the browser and re-open the website the cookies don't work in my php code and they dose not get logged in, but even more weird. Then when i try yo echo the cookie using:

echo $_COOKIE["last_login"];

It in the begining does not show up but sometimes after a few reloads it just randomly starts working with the cookie and it echo it out and you get logged in...?

So how can i make it so the cookies allways work within the next 30 days without it being weird?

  • 写回答

1条回答 默认 最新

  • dtm37893 2017-05-10 19:34
    关注

    Sometimes browsers clear cookies when closing them. A few things you can check just to be sure:

    • Is this happening in just one browser or all browsers you can get your hands on?
    • Is the time on your system correct?
    • Does setcookie return TRUE? Check it: var_dump(setcookie("last_login", $loginID, time() + (86400 * 30), "/"));
    • Is the correct php.ini loaded? Check phpinfo() to see if the settings you changed are visible or not.

    Edit:

    Responding to the follow up question about the domain (see comment): Yes you can.

    setcookie("last_login", $loginID, time() + (86400 * 30), "/", "domain.com");
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥30 vb net 使用 sendMessage 如何输入鼠标坐标
  • ¥200 求能开发抖音自动回复卡片的软件
  • ¥15 关于freesurfer使用freeview可视化的问题
  • ¥100 谁能在荣耀自带系统MagicOS版本下,隐藏手机桌面图标?
  • ¥15 求SC-LIWC词典!
  • ¥20 有关esp8266连接阿里云
  • ¥15 C# 调用Bartender打印机打印
  • ¥15 我这个代码哪里有问题 acm 平台上显示错误 90%,我自己运行好像没什么问题
  • ¥50 C#编程中使用printDocument类实现文字排版打印问题
  • ¥15 找会编程的帅哥美女 可以用MATLAB里面的simulink编程,用Keil5编也可以。