方法一:
<%
‘——-针对信息产业局服务器一流信息监控的动网防广告代码
‘说明:防注册机核心检测代码
‘–检测当前是否访问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) 找到:
在下面加入:
<!–
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>
再找到:
<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文件,找到:
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
‘防暴力用户名倒填判断检测代码结束