asp制作的网站留言,高手给写个验证英文的代码

dukuizhen 2009-12-14 09:08:50
公司网站留言中出现大量的垃圾英文留言,有很多的连接,我想屏蔽这些留言,可是如何在服务器端写,高手给写asp验证代码能屏蔽英文的!js就不需要了
...全文
138 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
dukuizhen 2009-12-14
  • 打赏
  • 举报
回复
<!-- #include file="../conn.asp"-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>

<body>
<%
set rst=server.CreateObject("adodb.recordset")
rst.open "zxly",conn,1,3
rst.addnew
rst("kname")=trim(request.Form("name"))
rst("ktel")=trim(request.Form("tel"))
rst("ktitle")=trim(request.Form("zhuti"))
%>
<%
if Not CheckFrom(request.form("liuyanneirong")) then
response.Write " <script LANGUAGE='javascript'>alert('非法操作,请输入中文');history.go(-1);/script>"
response.End
end if

Function CheckFrom(str)
CheckFrom = False
n=0
for i=1 to len(str)
whichChar = mid(str,i,1)
if abs(asc(whichChar))>127 then
n=n+1
'Response.write whichChar & "是一个汉字"
if n>3 then
CheckFrom = true
exit for
end if
end if
next

End Function
%>
<%

if trim(request.Form("yanzhengma"))="" And CStr(Session("GetCode")) <> CStr(request.Form("yanzhengma")) then
response.Write "<script> alert('请返回输入正确的验证码,谢谢合作!');history.back();</script>"
end if
rst.update
rst.close
set rst=nothing
response.Write "<script> alert('提交成功!我们会及时给您回复,请浏览本站查收...');window.location.href='http://www.guidepost-china.com/zxly.asp';</script>"
%>
</body>
</html>
上面写的对吗?可是为什么数据库中没有数据呢?
dukuizhen 2009-12-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 number123456 的回复:]
首先你要确定,你要屏蔽的不是英文,而是这些全是英文的垃圾信息,所以,你要考虑的问题是如何有效屏蔽垃圾信息才对。
对于这种情况来说,你要从提交页和保存程序来做
提交页 加上验证码
保存页 验证提交来源(是否为本站)
      加上有效时间(防止在短时间内不断提交)
      提取IP地址(短时间内,同一IP出现大量信息,或相同信息自动加入非法IP地址列表中,禁止下次再次提交)

我能想到的就是这些基本方法
[/Quote]
那您能给我些个代码吗?我不会
gxq323 2009-12-14
  • 打赏
  • 举报
回复
最上面就行了
dukuizhen 2009-12-14
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 lzp4881 的回复:]
<%
if Not CheckFrom(request.form("content")) then
  'response.Write " <script LANGUAGE='javascript'>alert('非法操作');history.go(-1);/script>"
  response.End
end if

Function CheckFrom(str)
CheckFrom = False
n=0
for i=1 to len(str)
whichChar = mid(str,i,1)
if abs(asc(whichChar))>127 then
n=n+1
'Response.write whichChar & "是一个汉字"
if n>3 then
CheckFrom = true
exit for
end if
end if
next

End Function
%>
[/Quote]
上面的代码如果在验证都是中文的情况下如何把内容写入到数据库呢?应该放在什么地方写
gxq323 2009-12-14
  • 打赏
  • 举报
回复
过滤标签,过滤特殊字符,ls的已经很不错了
number123456 2009-12-14
  • 打赏
  • 举报
回复
首先你要确定,你要屏蔽的不是英文,而是这些全是英文的垃圾信息,所以,你要考虑的问题是如何有效屏蔽垃圾信息才对。
对于这种情况来说,你要从提交页和保存程序来做
提交页 加上验证码
保存页 验证提交来源(是否为本站)
加上有效时间(防止在短时间内不断提交)
提取IP地址(短时间内,同一IP出现大量信息,或相同信息自动加入非法IP地址列表中,禁止下次再次提交)

我能想到的就是这些基本方法
lzp4881 2009-12-14
  • 打赏
  • 举报
回复
<%
if Not CheckFrom(request.form("content")) then
'response.Write "<script LANGUAGE='javascript'>alert('非法操作');history.go(-1);/script>"
response.End
end if

Function CheckFrom(str)
CheckFrom = False
n=0
for i=1 to len(str)
whichChar = mid(str,i,1)
if abs(asc(whichChar))>127 then
n=n+1
'Response.write whichChar & "是一个汉字"
if n>3 then
CheckFrom = true
exit for
end if
end if
next

End Function
%>

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧