首页 新闻 会员 周边 捐助

关于特殊字符过滤问题。

0
[已解决问题] 解决于 2012-12-05 14:49

在做web开发时 难免会使用到特殊字符过滤。比如 <  >  - + <script> 等等这样的字符。很多人写了一个统一的类来进行过滤。  过滤的字符也大都差不多。但是 有时候我们可能在同一个文本框里面有些特殊字符需要过滤。而有些特殊字符时不需要过滤的。  比如我们需要输入联系电话。0755-88888888 这样的电话号码。 在特殊字符里面  横线- 这个是需要过滤的。 但是在电话号码里面却是又是需要这个 横线的 。那么我们又需要使用过滤函数来处理。  自然就会过来掉横线。如果不使用过滤函数来处理。那么假如人家 是通过其他途径 提交的数据进来。。。提交上来的是一些乱七八糟的数据 比较 <script>...</script>类似这样的数据。那怎么办。所以过滤是不可少的。难道我们未这个电话号码 单独写一个过滤函数吗。。 那么假如有1000 个 这种特殊情况。我们是不是需要写一千个特殊过滤函数呢。。由于经验有限。不知道该如何处理是好。希望各位高手。指点。。。

问题补充: 如果把所有客户端提交上来的数据都 进行html 编码后存放在数据库中。在读取或者其他操作的时候会不会有问题啊?
yzy的主页 yzy | 菜鸟二级 | 园豆:317
提问于:2010-10-13 17:13
< >
分享
最佳答案
0

我不理解你的意思,第一下划线和横线肯定是不需要过滤的- -

第二就算电话是0755<88888888,这里的<要过滤,那么过滤后会变成&lt;在网页上显示出来还是<,没什么问题

第三,过滤的叫HttpUtility.HtmlEncode,你试试就行

奖励园豆:5
Gray Zhang | 专家六级 |园豆:17610 | 2010-10-13 18:33
其他回答(1)
0

根据你的需求写过滤函数和验证函数(或正则)。

一般系统可分为过滤HTML字符,SQL注入,脏字等。这些都可以特殊做一些设计,比如过滤HTML你的需求要保留p,img等标签,那就不过过滤,如果有的地方要全过滤,那就加个重载函数。

而说的电话号码这些,可以在出现的地方写上验证,或者正则过滤等,不一定非要以函数的形式出现。

Astar | 园豆:40805 (高人七级) | 2010-10-14 08:52
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册