当前位置: 首页 > 图文教程 > 网络编程 > ASP > 过滤掉危险的HTML标记:script,ifame,object

ASP
bbs的数据结构和存储过程(二)
bbs的数据结构和存储过程(三)
聊天室自做 Follow Me
动态按钮生成器(上)
动态按钮生成器(下)
ASP直接调用EXCEL数据的例子(不用ODBC)
asp自动生成javascript检验函数
用Jmail做收取邮件附件的程序
简单的浮点论坛
ASP数据库恢复的代码
限制只能中文输入的方法
产生密码,记录到数据库,然后发送给用户。
一个基于web的QQ程序 1(xml+asp)
利用ASP生成EXECL文档
用ASP让用户访问指定页面
使用ASP程序对“HTML炸弹”进行屏蔽
实现ASP文件在线发邮件
用ASP+SQL Server为网页建一道防火墙
用Delphi开发ASP分页组件
如何在DataGrid控件中隐藏列

ASP 中的 过滤掉危险的HTML标记:script,ifame,object


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 130 ::
收藏到网摘: n/a

对于提交的HTML代码,如果含有script,iframe,frameset等标记,对网站本身会构成一定的潜在威胁,使用下面的函数可以过滤掉指定的HTML标记。
注:
1.对于单标记(如:<hr />,<br />等),因其对网站本身不会构成威胁,故未将单标记纳过过滤范围。
2.参数strHTML:待过滤处理的HTML代码内容
3.参数strTAGs:为待过滤掉的HTML标记名,各标记名以英文逗号( , )为间隔
复制代码 代码如下:
<%
'Wrtten by i{At}CnLei.Com
Function lFilterBadHTML(byval strHTML,byval strTAGs)
Dim objRegExp,strOutput
Dim arrTAG,i
arrTAG=Split(strTAGs,",")
Set objRegExp = New Regexp
strOutput=strHTML
objRegExp.IgnoreCase = True
objRegExp.Global = True
For i=0 to UBound(arrTAG)
objRegExp.Pattern = "<"&arrTAG(i)&"[\s\S]+</"&arrTAG(i)&"*>"
strOutput = objRegExp.Replace(strOutput, "")
Next
Set objRegExp = Nothing
lFilterBadHTML = strOutput
End Function

'Example
Dim sPageCont
sPageCont= "...网页正文内容..."
sPageCont=FilterBadHTML(sPageCont,"script,iframe,object,table")
%>