Bitte erklären Sie mir, wie ich PHP verwenden kann, um die Anzahl der Benutzeranmeldungen zu begrenzen.
我只是一条咸鱼哈
我只是一条咸鱼哈 2017-08-29 22:16:14
0
2
3805

Einfach ist in Ordnung. Ich hoffe, Sie können mir sagen, welche Methode ich verwenden soll, und Ihnen einige Ideen geben.

我只是一条咸鱼哈
我只是一条咸鱼哈

即使是小小的人物,也有他自己精彩的故事

Antworte allen(2)
逸先生
$user = "xx";
$pass = "xx";
$waittime = 241231; //根据$user在数据库中查询出来的时间
$times = 0; //根据$user在数据库中查询出来的尝试次数

if ((time() - $waittime) > 0) {
	if (/*根据user和pass去数据库查询*/) {
		//账号和密码存在
		//登陆成功
		//数据库中 waittime = 0;times= 0;
	} else {
		//账号和密码不存在
		//登陆失败
		//数据库中 times= $times+1;
		if (($times + 1) == 3) {
			//数据库中 times= 0;waittime = time() + 30 * 60(当前时间+半小时);
		}
	}
} else {
	//提示 还需等待$waittime - time() 秒
}


逸先生

你所说的限制登录次数,是限制每天的登陆次数,还是说一个人登录以后,在线就不能再次登录?如果是限制一个人一天可以登陆5次。可以这么设计,在用户表中添加一个字段,login_times tinyint (1) ,每次登录时都判断该数值是否大于等于5,如果小于5,登录成功,次数加一,服务器使用定时任务,每天凌晨该数据清0

  • Antwort 抱歉,我说的不是很清楚,我想问的是:假设一个用户登录了3次,每次密码都输入错误了,然后限制这个用户30分钟之后才能继续尝试登录。请问要用到什么方法来做,没什么思路╮(╯▽╰)╭
    我只是一条咸鱼哈 Autor 2017-08-30 11:33:06
  • Antwort O(∩_∩)O谢谢了
    我只是一条咸鱼哈 Autor 2017-08-30 13:56:00
  • Antwort 还是通过字段来限制,用户表添加两个字段 times tinyint(1) waittime int(11) default 0;每次登陆的时候,1先根据该用户的登陆名来判断waittime的值是否为0,是0,可以登陆,继续判断密码什么的,不是0,提示他等待((waittime - time()) / 60) 分钟,2 如果waittime的值为0,判断登陆名加登陆密码,是否正确,正确,登陆成功,不正确,times加1,如果times = 3,那么,waittime = time()+ 30 * 60,登陆成功后,times=0,waittime=0
    逸先生 Autor 2017-08-30 12:11:48
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage