帝国CMS二次开发教程:禁止某用户组用户登录保障网站安全性

帝国CMS二次思路

帝国CMS默认没有像discuz小黑屋那样的功能,也没有限制某些用户使用网站的功能,某些用户恶意使用网站不,站长不想给这些用户提供服务怎么办?

后台可以删除该账户,封禁IP,但是删除后,该用户名又可以用之前的信息重新注册帐号,治标不治本。

我们需要二次开发一种保留该用户信息,保留邮箱或手机号信息注册验证,防止重复注册,又可以让他无法继续登录使用网站功能,我分享一个帝国cms二次开发方法,就可以禁止某些用户登录。

帝国CMS二次开发方法

1、首先去后台用户管理菜单,新建一个“小黑屋”的用户组,用来储存黑曼巴用户,记住用户组ID

帝国CMS二次思路

帝国CMS默认没有像discuz小黑屋那样的功能,也没有限制某些用户使用网站的功能,某些用户恶意使用网站不,站长不想给这些用户提供服务怎么办?

后台可以删除该账户,封禁IP,但是删除后,该用户名又可以用之前的信息重新注册帐号,治标不治本。

我们需要二次开发一种保留该用户信息,保留邮箱或手机号信息注册验证,防止重复注册,又可以让他无法继续登录使用网站功能,我分享一个帝国cms二次开发方法,就可以禁止某些用户登录。

帝国CMS二次开发方法

1、首先去后台用户管理菜单,新建一个“小黑屋”的用户组,用来储存黑曼巴用户,记住用户组ID

 

用户组设置方法截图

2、找到/e/member/class/member_loginfun.php

3、搜索

1

2

3

4

5

//IP

$lastip=egetip();

$lastipport=egetipport();

$usql=$empire->query("update ".eReturnMemberTable()." set ".egetmf('rnd')."='$rnd',".egetmf('groupid')."='$r[groupid]' where ".egetmf('userid')."='$r[userid]'");

$empire->query("update {$dbtbpre}enewsmemberadd set lasttime='$lasttime',lastip='$lastip',loginnum=loginnum+1,lastipport='$lastipport' where userid='$r[userid]'");

4、在下方加上限制登录代码

1

2

3

if($r['groupid']==小黑屋用户组ID){

printerror("该账号涉嫌恶意使用已被禁止登录使用!","history.go(-1)",1,0,1);

}

释义:登录时判断该用户用户组ID,如果等于,就弹窗并返回上一页,不继续执行下面的代码了,就这样简单。

用户组设置方法截图

2、找到/e/member/class/member_loginfun.php

3、搜索

1

2

3

4

5

//IP

$lastip=egetip();

$lastipport=egetipport();

$usql=$empire->query("update ".eReturnMemberTable()." set ".egetmf('rnd')."='$rnd',".egetmf('groupid')."='$r[groupid]' where ".egetmf('userid')."='$r[userid]'");

$empire->query("update {$dbtbpre}enewsmemberadd set lasttime='$lasttime',lastip='$lastip',loginnum=loginnum+1,lastipport='$lastipport' where userid='$r[userid]'");

4、在下方加上限制登录代码

1

2

3

if($r['groupid']==小黑屋用户组ID){

printerror("该账号涉嫌恶意使用已被禁止登录使用!","history.go(-1)",1,0,1);

}

释义:登录时判断该用户用户组ID,如果等于,就弹窗并返回上一页,不继续执行下面的代码了,就这样简单。