我被要求构建一个一次只能托管一个用户的项目管理应用程序。我通过简单地status
在我的表中创建一行来做到这user
一点,当有人登录时设置为 1。
现在,status = 1
没有其他人可以登录,他们收到一条错误消息,而不是说另一个用户已经在使用该应用程序。当在线用户注销时,我更新status
数据库中的行并将其设置为0,以允许其他用户自由登录。
一切都很好,除了,如您所见,它依赖于注销按钮,许多用户忘记以这种方式注销,他们只是关闭选项卡或浏览器保留status
为 1,然后阻止整个系统。
我尝试了几种方法在页面关闭时使用会话超时或通过更新数据库,onunload
但我无法找到一种干净可靠的方法。
我如何开发这样一个同时结合单用户模式和自动/智能注销的系统?
谢谢你的帮助。