方法一:
<% ‘——-针对信息产业局服务器一流信息监控的动网防广告代码 ‘说明:防注册机核心检测代码 ‘–检测当前是否访问reg.asp 即进行注册的相关操作 If server.mappath(Request.ServerVariables("SCRIPT_NAME")) = Server.MapPath("reg.asp") Then ‘判断Session对象是否被赋值 If Session("AllowReg") <> 1 Then Response.Write("<script language=""javascript"">" & VbCrLf) Response.Write("<!–" & VbCrLf) Response.Write("alert (""论坛启用了新防注册机机制,给您注册时带来的不便,敬请原谅!"");" & VbCrLf) Response.Write("alert (""注册前请您先浏览论坛任意版块中的任意一个帖子,既可注册!"");" & VbCrLf) Response.Write("window.location.href = ""index.asp"";" & VbCrLf) Response.Write("// ->" & VbCrLf) Response.Write("</script>" & VbCrLf) Response.End End if End if
‘检测是否在查看公告页面 If server.mappath(Request.ServerVariables("SCRIPT_NAME")) = Server.MapPath("dispbbs.asp") Then If Session("AllowReg") <> 1 Then Session("AllowReg") = 1 End if End if
%>
复制到CONN里面,或每个页面都会调用的页面也行
方法二:
第一步:增加注册必填项目
动网默认风格分页面模板(page_login)界面风格管理template.html(13) 找到:
<script language="JavaScript" src="inc/Mymodify.js" type="text/javascript"></script>
在下面加入:
<script language="JavaScript"> <!– function DaoAuto_onclick(){ var user2=""; var user1=document.theForm.{$username}.value; if (user1=="") { alert("你不会吧,用户名都没填写怎么能生成倒填项!"); } else{ Koomv_length=parseInt(user1.length); for (i=1;i<=Koomv_length;i++) { user2=user2+user1.charAt(Koomv_length-i); } document.theForm.username_che.value=user2; } } //–> </script>
再找到:
<td width="40%" class="tablebody1"><input type="hidden" name="{$hidden}" value="{$hidden}"> <b>用户名</b>:<br />注册用户名长度限制为{$NameLimLength}-{$NameMaxLength}字节</td> <td width="60%" class="tablebody1"> <input name="{$username}" id="{$username}" type="text" size="30" maxlength="{$NameMaxLength}" onkeyup="dv_ajaxcheck(‘checkusername’,'{$username}’);" style="float:left"/> <div id="isok_{$username}" class="forminfo"></div> </td> </tr> {$getcode}
在下面加入:
<TR> <TD class=tablebody1><B>用户名倒填项</B>:<BR><font color="red">为防止暴力注册,请将你的用户名倒填一下</font><br>如“<font color="blue">葛洲坝娱乐吧</font>”填为:“<font color="blue">吧乐娱坝洲葛</font>”,请按自动倒填按钮!</TD> <TD class=tablebody1> <input type="text" name="username_che" size="30" readonly="true"> <input type="button" name="DaoAuto" value="点击自动填写倒填项!!" onclick="DaoAuto_onclick()"> </TD> </TR>
第二步:倒填检测项修改(reg.asp文件)
用记事本打开reg.asp文件,找到:
‘防止填写QQ号码为非数字类型 2005-3-22 Dv.Yz If Isnumeric(Request.Form("OICQ")) Then Qq = Int(Request.Form("OICQ")) Else Qq = "" End If
在下面加入:
‘防暴力用户名倒填判断检测代码开始 dim username_che,rosLen,name_D,koomv_name If Request.form("username_che")="" Then Response.redirect "showerr.asp?ErrCodes=<li>葛吧提醒:请您填写好用户名倒填项,否则无法注册哦!&action=OtherErr" Else koomv_name=Request.form("username_che") rosLen=Len(koomv_name) do while rosLen<>0 name_D=name_D+mid(koomv_name,rosLen,1) if rosLen=0 then exit do else rosLen=rosLen-1 end if loop username_che=name_D If username_che<>username Then Response.redirect "showerr.asp?ErrCodes=<li>葛吧提醒:你倒填的用户名没有通过系统验证,为了锻炼你的逆向思维,请继续!!&action=OtherErr" End If End If ‘防暴力用户名倒填判断检测代码结束