不显示删除回复显示所有回复显示星级回复显示得分回复 怎么去除textbox中录入的非法字符

来源:互联网 发布:淘宝发饰店推荐知乎 编辑:程序博客网 时间:2024/04/30 12:57

…………………………

…………………………

两点建议:
一、在将内容保存到数据库之前对TextBox的Text进行Html编码,即用   Server.HtmlEncode(TextBox1.Text)或HttpUtility.HtmlEncode(TextBox1.Text)方法将相应的html标签进行编码;
二、使用参数化的SQL语句,不要用   "insert   into   mytable(field1,field2)   values( ' "+TextBox1.Text+ " ', ' "+TextBox2.Text+ " ') "   这样的方法,而是用   "insert   into   mytable(field1,field2)   values(@fvalue1,@fvalue2) "   然后给每个参数赋值,这样不但易于阅读维护,也不会出现上面所说的输入单引号即出错的问题。

 

………………不会出错,但在我的textbox中就出错。
错误提示如下:
A   potentially   dangerous   Request.Form   value   was   detected   from   the   client   (T_note= "   <body   background= ". ").

这个是你使用的是1.1的framework的缘故,主要考虑到安全性的问题,你可以在web.config设置,允许用户提交带HTML标签的内容;具体如下:
在system.web中添加:
<pages   validateRequest= "false "/>

………………建议使用编码,如果有特定原因,可以自己用
OutString   =   InputString.Replace( "> ", "&gt; ");
的方式替换,你说的非安全字符输入错误,是因为在asp.net1.1中默认是将安全输入开关打开的,在页面中或者web.config中设置
pages   validateRequest= "false "
即可

………………请问,如果我将web.config中这个设置关掉:pages   validateRequest= "false "
系统是否出出现安全漏洞,比如某人在录入数据时录入 <%子程序%> ,那么将来程序在回显这段话时,就会执行这段子程序,而子程序中可能包含恶意代码。于是系统会处于很危险的境地!
----------------------
请问会出现我说的这种情况吗?
如果会,怎么解决?
--------------------
还有,陕北吴旗娃给我说的办法很有境界!加分!!其他人也加分!!

…………………………在将   validateRequest设为false后,对回发的数据用HtmlEncode进行编码即可以避免恶意的脚本攻击。

原创粉丝点击