我为用户登录设置了下降,并且有一个 session 时间()和一些其他添加到表中的东西。
我遇到的问题是,当用户关闭浏览器时,它不会从 mysql 表中删除 session 。
从用户的角度来看,这很好,因为他们在打开浏览器时必须重新登录。
但对于 super 用户仪表板,如果用户关闭浏览器,它仍会显示用户已登录。
我确实看过关闭浏览器警报 javascript 代码,但我宁愿找到一种没有它的方法。
然后我想可能是一个 cron 脚本,但它可以让用户注销,除非我在每次他们单击另一个页面时更新 time()。只有这样吗?
最佳答案
我不会相信浏览器会告诉您它正在关闭。
唯一的办法就是在服务器上做。
尝试在每次验证 session 时记录当前时间 - 这将是 session 上次访问时间。
然后您可以删除所有超过您决定的某个时间段的 session 。您可以通过 cron 作业执行此操作,也可以将其添加到 session 验证代码中,每个用户都可以帮助保持表格整洁。
关于php - 如果用户在浏览器上单击关闭,则从 mysql 表中删除用户 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11588207/