2012-07-09 65 views
1

我想在我的一个php webapps中实现一个模拟账户。定时账户访问(PHP/mysql)

这个概念是,用户自从他第一次登录以来总共有x小时(最大)的访问权限。我正在考虑从第一次登录开始的前端计数器(javascript),如果用户退出浏览器,它将更新数据库上的剩余小时数(关闭之前)。

我不知道是否有更好的方法来做到这一点。有任何想法吗?

+0

所以你打算实现X小时的实际使用,而不是x小时的访问?这是一个很大的差异,实施起来真的很难。 – ChrisR 2012-07-09 08:02:56

+3

您无法知道用户何时退出浏览器。他们可能会失去网络访问权限,或者停电,或者他们的浏览器可能会崩溃而不会触发'onunload'事件。这对于商业服务来说还不够可靠(我假设你正在测量访问权限,你将要为你的用户收费)。 – lanzz 2012-07-09 08:03:33

+0

@lanzz很好的评论,这是我一直在想我的问题。 – Panagiotis 2012-07-09 11:40:22

回答

3

这取决于您对停止潜在的滥用有多重要。

这样我可以创建模拟账户,退出你的页面之前,请关闭JS,所以更新从未发生过,我有我的永恒的模拟账户:)

我会更新时间每一页上走并检查是否使用空闲小时数。

+0

其实你和symcbean给了我一个介于两者之间的小概念。 – Panagiotis 2012-07-09 11:42:54

1

大多数人不会使用javascript实现访问控制 - 这太容易规避了。如果是我,我会在会话管理层实现它 - 每次用户访问页面时都会自动调用代码,并且由于它无论如何都会控制对会话数据的访问,因此添加其他约束是微不足道的。