【发布时间】:2012-07-08 19:57:09
【问题描述】:
我正在创建一个要在 iPad 上使用的网络应用程序。一个重要功能是用户一次只能登录一次,并且一次只能在一台设备上登录。如果用户登录,我已经通过将我们数据库中的一个字段从 0 更新为 1 来实现这一点。
但是,如果用户忘记注销,设置超时功能也很重要。我尝试在 PHP 中执行此操作,但它不合适,因为必须在脚本运行以注销用户之前刷新页面。
然后我尝试在客户端使用 JavaScript(30 分钟后进行简单的页面重定向),但我刚刚了解到,如果您在 iPad 上最小化 Safari,所有正在运行的脚本都会停止,因此用户可以轻松单击主屏幕没有注销,超时将不起作用。
Sooo...我没有想法...有什么方法可以让一个人在 iPad 上的 Safari 中超时?
【问题讨论】:
-
通常不可能100%准确地检测到用户何时离开;特别是如果您将会话数据存储在数据库中,您将需要编写一个定期运行的脚本(即 cronjob)并检查会话是否已过期。
标签: php javascript ipad timeout logout