你好,我有一个网站。使用php,mysql创建。我想设置一个限制,只有10个用户可以同时登录我的网站。我怎么能做那种设置?任何人都知道解决方案,请帮助我..
答案 0 :(得分:3)
使用数据库表来存储登录用户的数量,但您需要想出一些方法来对这些用户施加时间限制。我建议在表格中注明他们最后一次活动的字段。当新用户尝试登录时,您需要应用这样的逻辑(伪代码):
if(<10users){
login
} elseif(any of the users have no activity for 30 mins){
remove that user and login
} else {
inform user of no space
}
每次登录用户访问新网页时,您都需要更新上一个活动。
答案 1 :(得分:1)
阅读PHP中的会话,然后编写自己的会话处理程序 - 第一次作为学习练习。然后再编写自己的会话处理程序 ,修复第一次尝试的所有错误,并添加设施以计算活动会话。
请注意,会话处理程序的正常行为是会话数据即使在会话超时后仍然存在 - 它由垃圾收集器(以及可选的会话加载器)来清除过时的会话数据。
答案 2 :(得分:0)
我会覆盖php会话处理并在数据库中存储用户会话。你可以在这里找到一个简单的教程:http://www.raditha.com/php/session.php
这样您就可以简单地检查数据库表中是否存储了10个以上的有效会话。虽然您必须考虑处理注销和超时,因为某些标准超时(如30分钟)可能无法在您的应用程序中正常运行。
答案 3 :(得分:0)
如果您希望10个用户登录您的站点,请在登录的用户超过10个时禁用登录框。
这假定您在db中有一个表,用于记录站点中记录的用户。登录过程将在表中写入一个新行。注销程序将删除它。
只需计算此表中的行数即可确定用户数。
答案 4 :(得分:0)
如上所述,您必须维护一个表,该表将存储登录的用户数,但每当用户注销然后递减该值....每当新用户登录时通过检查它来增加该值限制