特别提示:修改之前论坛先做个备份,出错时不会恢复的朋友也不用费多大事!
防止论坛恶意注册
修改一下注册就行了。加上一个随机回答问题的,,,
1.进入后台,风格界面模板总管理,page_login,template.html(13)
<TR>
<TD class=tablebody1><B>密码问题</B>:
忘记密码的提示问题</TD>
在此两句上面添加如下代码
<TR>
<TD class=tablebody1>
<div class=tablebody1><INPUT size=30 name=evilanswer> </TD>
</TR>
2. 打开reg.asp,找到
<!--#include file="inc/md5.asp"-->
在其下添加
<!--#include file="inc/CheckEvil.asp"-->
找到
TempLateStr=Replace(TempLateStr,"{$user_belief}",Selectinfo(5))
在其下添加
Randomize
Session("EvilID")=int(Rnd*QuesionNum)
TempLateStr=Replace(TempLateStr,"{$EvilQuesion}", QuesionArray(Session("EvilID")))
找到
Else
quesion=Request.form("quesion")
End If
在其下添加
If Request.Form("EvilAnswer")="" Then
ErrCodes=ErrCodes+"<li>"+"请填写防恶意注册问题!"
End If
If Not CheckEvil(Request.Form("EvilAnswer")) Then
ErrCodes=ErrCodes+"<li>"+ "防恶意注册问题回答错误,请返回重试。"
End If
3. 增加一个新文件CheckEvil.asp,填写如下代码,并上传到论坛inc目录下,即 /inc/CheckEvil.asp。
<%
Dim QuesionArray(100)
Dim AnswerArray(100)
Dim QuesionNum
QuesionNum=5 '请在这里正确设置问题的总数
Function CheckEvil(Answer)
Dim TrueAnswer
If Session("EvilID")="" Then
CheckEvil=False
Exit Function
End If
TrueAnswer=CStr(AnswerArray(Session("EvilID")))
If Answer=TrueAnswer Then
CheckEvil=true
End If
End Function
QuesionArray(0)="12的平方是多少?(数字)"
AnswerArray(0)="144"
QuesionArray(1)="中国最长的河流叫什么名字?"
AnswerArray(1)="长江"
QuesionArray(2)="“举头望明月”的下句是什么?(提示:低头??乡)"
AnswerArray(2)="低头思故乡"
QuesionArray(3)="“举头望明月”的下句是什么?(提示:低头??乡)"
AnswerArray(3)="低头思故乡"
QuesionArray(4)="中国史上唯一的女皇是谁?(提示:武?天)"
AnswerArray(4)="武则天"
%>