日志样式

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

 

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

 

上一篇:DEDECMS修改member会员中心文件夹名称 更改member目录 下一篇: 织梦文章栏目转入新模型操作 DEDE分表迁移内容