Php iPad上Safari中的用户超时

Php iPad上Safari中的用户超时,php,javascript,ipad,timeout,logout,Php,Javascript,Ipad,Timeout,Logout,我正在创建一个可在iPad上使用的web应用程序。一个重要的特性是,用户一次只能登录一次,并且只能在一台设备上登录。我已经通过在用户登录时将数据库中的字段从0更新为1实现了这一点 但是,如果用户忘记注销,具有超时功能也很重要。我尝试在PHP中执行此操作,但并不合适,因为在运行脚本注销用户之前,必须刷新页面 然后我尝试在客户端使用JavaScript(30分钟后一个简单的页面重定向),但我刚刚了解到,如果在iPad上最小化Safari,所有正在运行的脚本都会停止,这样用户就可以轻松地单击主屏幕而不

我正在创建一个可在iPad上使用的web应用程序。一个重要的特性是,用户一次只能登录一次,并且只能在一台设备上登录。我已经通过在用户登录时将数据库中的字段从0更新为1实现了这一点

但是,如果用户忘记注销,具有超时功能也很重要。我尝试在PHP中执行此操作,但并不合适,因为在运行脚本注销用户之前,必须刷新页面

然后我尝试在客户端使用JavaScript(30分钟后一个简单的页面重定向),但我刚刚了解到,如果在iPad上最小化Safari,所有正在运行的脚本都会停止,这样用户就可以轻松地单击主屏幕而不必注销,超时也不会起作用


Sooo…我没主意了…有没有办法让一个人在iPad上的Safari中超时?

使用你的服务器CRONJOB功能并编写一个用于DB范围注销检查的脚本。通过这种方式,您将完全不需要用户客户端,您所要做的就是使用时间戳监视用户的操作,稍后您将使用脚本进行检查


例如,如果您的用户表中有一个字段
last\u action\u time
,则每次重新加载站点或执行任何其他操作时都会更新该字段。只需将
time()
存储到该字段中。对于cronjob脚本,只需使用
last\u action\u time
通常,当用户确实离开时,无法100%准确地检测;特别是,如果将会话数据存储在数据库中,则需要编写定期运行的脚本(即cronjob),并检查会话是否已过期。+1。不要相信客户。只需确保在每个响应开始时也进行了安全检查。如果登录超时,您可以将后续请求重定向到身份验证屏幕。