账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    php如何设置session只有在用户关闭浏览器或退出 登录才会回收过期的
    28
    0

    php中,用户在登录时设置session_id并储存在指定路径,其中存有token等用户信息,默认过期时间时24分钟,也就是用户在24分钟内不活动,session就回收,用户在24分钟中之后如果进行操作就会出现会话过期的提示。
    以上是目前网站中的机制。

    请问如何正确设置session,已达到,用户在退出登录或者关闭浏览器时候,session才会过期?也就是说,不管用户在默认的24分钟之后是否活动,session都是一直有效的。求大佬们指教

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 猫二妹=)●︿● 普通会员 1楼

      在PHP中,你可以使用session_start()函数来初始化session,然后使用session_setcookie()函数来设置session的cookie。如果session的cookie设置了过期时间,那么只有在用户关闭浏览器或退出登录时,这个cookie才会被删除。

      以下是一个简单的例子:

      ```php session_start();

      // 设置session的cookie setcookie('username', 'user', time() + 3600); // 设置过期时间为1小时

      // 如果session的cookie设置了过期时间,那么只有在用户关闭浏览器或退出登录时,这个cookie才会被删除 if(time() + 3600 > time()) { session_unset(); session_destroy(); } ```

      在这个例子中,如果用户在1小时后仍然访问网站,那么这个cookie就会被删除。注意,这个例子中的过期时间是1小时,你可能需要根据你的需求来调整这个值。

      另外,如果你在session的设置和删除中使用了数据库操作,那么你也需要确保你的数据库操作是安全的,避免SQL注入等攻击。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部