冰场打架王 片尾曲:写ASP时提交数据中要怎样屏蔽字符?

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/30 17:10:39
如 < 要转换为 <

一般要屏蔽哪些字符?分别要怎么转换?
还有,如果要使数据只支持HTML不支持javascript等的话要怎样屏蔽?如果任何语言都不支持呢?
如 < 要转换为 & lt;

使用Server对象,URLEncode方法。
注:根据URL规则对字符串进行编码。当字符串数据以URL格式传递到服务器时,串中间不能有空格,不能有特殊字符,这时,你就必须用URL编码。
例:<%Response.Write Server.URLEncode("<")%>

1、一般要屏蔽的字符有:HTML标记,特殊字符(单、双引号)
2、可以使用Replace()函数屏蔽。

要屏蔽的字符有以下这些:
"'%_",这是在写入数据库时容易出问题
"<>&空格回车",这个在HTML显示时需要处理
"select,insert,等",SQL常用命令,需要处理,防止注入

str=str.Replace("<","<")

一般都是用Replace()去替换from提交过来的参数!
你可以写一个类,去替换!以后就不每个页面都去写一边了!
例如
replace("asdklj'asdlkj'asdlkfj'","'","‘")
replace("asdk select * from asldkjflj'asdlkj'asdlkfj'","select","SELECT")
就可以了!直接替换成全角的!
这样,你即使不替换回去,也知道是什么!