快捷搜索:   nginx

DEDECMS会员系统防止恶意注册及快速删除垃圾会员及文章的方法

现在网上有一大堆所谓的营销软件,会自动搜索并注册你的网站会有,然后发布垃圾信息,即使你使用了邮箱验证也很难避免,因为对方邮箱也是自动注册的也是真实的,其注册与发布速度非常惊人,可能一夜之间你的网站就被发布几百上千篇垃圾文章,因此我们需要防范这种情况出现。


以下是测试在最新的Dedecms5.7上成功的防止恶意注册的方法:


防止恶意注册

打开/member/reg_new.php,


找到


if($dopost=='regbase')
    {


在其下添加如下代码:


 

if($reg_ha != '奔牛网') 
  { 
      ShowMsg('请正确输入本网站名,本网站名为<font color=red><b>奔牛网</b></font>','-1'); 
   exit(); 
  }



然后打开/member/templets/reg-new.htm,在


<li><span>验证码:</span>


上添加:


<li>
<span>随机问题:</span>
<input type="text" class="intxt w200" style="width: 100px;" name="reg_ha" size="25" maxlength="15" value="请输入本网站名" onfocus="if (this.value=='请输入本网站名')this.value=''" onblur="if (this.value=='')this.value='请输入本网站名'">
<i class="red">*</i>
<em id="_reg_answer">本网站名为:<font color=red><b>奔牛网</b></font>(请将<font color=red><b>奔牛网</b></font>输入到左边文本框</em>中)
</li>



防范措施做完,接下来开始清理被批量注册的垃圾会员和垃圾文章


批量删除垃圾会员

批量删除垃圾会员的办法,可以通过dedecms后台自带的sql命令行工具执行SQL命令即可,方法如下:


后台-系统-sql命令行工具:


如果是要删除管理员以外的其他所有会员,则SQL命令如下:


delete from dede_member where not mid='1'



前提是你的管理员id为1,一般默认情况下id为1的即为管理员用户,所以上述代码保留了mid为为1的用户。另外,如果你需要删除某一范围的会员,则代码如下:


delete from dede_member where mid between 2 and 10000



命令很简单一看就懂,删除mid从2到10000的会员。这里不多列举了,你可以根据自己的需要进行条件筛选删除。


批量删除垃圾文章

批量删除垃圾文章的方法跟批量删除垃圾会员的方法差不多,通过执行SQL命令即可,一般地会员投稿后默认为待审核状态,因此,如果需要删除这些垃圾文章,我们只需要通过执行SQL命令来删除待审核的文章就行,SQL命令如下:


delete from dede_archives where arcrank=-1


提示运行成功后,就可以把垃圾会员及其发布的垃圾文章快速删除了


顶(1)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论