巧用“防注函数”拦截留言广告
罗良富http://www.luos.org
最近的一个网络“新动向”是,一些别有用心的人,在你的留言本上狂打广告,甚至采用软件自动张贴,屡删屡贴,让你难以应付。
怎么办?菜鸟在这里教你一个“菜”办法。
不久前,菜鸟不是有个“防注函数”吗,把那个函数照下面改一下:
dim sqlstr
Function sqlcheck(Str)
sqlstr=str
IF instr(sqlstr,"网络赚钱")>0 _
or instr(sqlstr,"网上兼职")>0 _
or instr(sqlstr,"专业提供")>0 _
or instr(sqlstr,"六合彩")>0 _
or instr(sqlstr,"美女图库")>0 _
or instr(sqlstr,"免费电影")>0 _
or instr(sqlstr,"网站推广")>0 _
or instr(sqlstr,"出售各种")>0 _
or instr(sqlstr,"代理")>0 _
or instr(sqlstr,"成人用品")>0 _
or instr(sqlstr,"提供专业")>0 _
or instr(sqlstr,"三合彩")>0 _
or instr(sqlstr,"为您免费")>0 _
or instr(sqlstr,"大量批发")>0 _
or instr(sqlstr,"激情电影")>0 _
or instr(sqlstr,"专业从事")>0 _
or instr(sqlstr,"一夜情")>0 THEN
Response.Write("<script>alert(""喂,朋友,你的留言包含非法内容!"");window.location.replace('default.asp');</script>")
response.end
End IF
End Function
函数没有穷尽要拦截的内容,根据实际加减吧。
我们就用这个函数来医治乱贴广告者。
一,前端拦截。就是凡有列举内容的留言,根本不让他提交。
在进行留言检查时,在留言内容不为空之后,加一句:
sqlcheck(Request("content"))就行啦,什么也不需要改!
这是比较温和的做法,不让他贴就算了。但到底他是谁,他要贴什么东西,你也是不知道的。
二,后端拦截。就是尽让他贴吧,在留言显示时再打整。
这就需要把函数改一下:如果读出的内容rs("content")中,包含函数列举的内容,就将他替换为一个提示句子。这样他的留言就不会显示,而成了你的句子啦。自己动一下手吧,如何改,如何用我就不说了。
后端拦截的好处是,既不让它扩散,又把留言者的情况和留言内容都原封不动地保存下来了,必要时还可据此举报呢。
前后拦截我都实际成功了的,有兴趣可以试试。
|