今天在给客户网站使用aspcms程序写一个留言页面的时候,因为要涉及到一些基本的内容验证,所以涉及到了表单内容验证的问题,相信很多站长偶尔也会遇到这样的问题,所以就在这里记录下来,希望能够帮助有需要的朋友。
aspcms本身还算安全,只有留言这个常用表单经常会被注入很多垃圾信息,插入以下验证代码就可以避免困扰的垃圾留言问题。
方法一、修改后台代码
打开gbook/save.asp
在17行以下添加
Dim RefreshTime,isRefresh
RefreshTime = 10 '防止刷新时间,单位(秒)
isRefresh = 1 '是否使用防刷新功能,0=否,1=是
If isRefresh = 1 Then
If (Not IsEmpty(Session("RefreshTime"))) And RefreshTime > 0 Then
If DateDiff("s", Session("RefreshTime"), Now()) < RefreshTime Then
alertMsgAndGo "本页面起用了防刷新机制,请不要在"&RefreshTime&"秒内连续刷新本页面……","-1"
Else
Session("RefreshTime") = Now()
End If
Else
Session("RefreshTime") = Now()
End If
End If
表单内容验证的方法有很多,但是最简单也最直接的应该就是通过js来验证表单内容了,这样不需要我们了解程序,也不用对程序做太多修改,只要在留言板的模板文件中加入一段验证内容的js文件就可以实现。
这个是给做网站的朋友分享的,如果你不是站长也不是做网站的就默默飘过吧,哈哈!
验证表单的JS代码如下(可以直接在留言页面引用):
function checkpost(){
if(biaodan.title.value==""){
alert("请填写标题");
biaodan.title.focus();
return false;
}
if(biaodan.mobil.value.length<>11){
alert("请填写正确的手机号码");
biaodan.mobil.focus();
return false;
}
}
aspcms留言表单页面gbook/save.asp的写法如下:
<form action="/save.asp" method="post" name="biaodan" οnsubmit="return checkpost();">
<input name="title" type="text"/>
<input name="mobil" type="text"/>
</form>
方法三、建立直接关闭官方留言版功能,启用第三方多说提供的留言互动系统;
效果如下:
最为直接的办法:
1.修改数据默认路径以及数据库的名称最好使用特殊字符
2.不需要留言板就删除留言板或者留言板页面能够减少的尽量减少
3.修改数据库格式为mdb具体格式看项目要求