送分给各位了

时间:2021-07-21 04:07:28
我已经做好了一个html_editor,就是类似于
本站的http://www.csdn.net/Develop/Add_Article.asp
我想听听各位的建议,在我获取内容(html标记)后,在要保存到数据库之前的检查中那些应该保留,那些应该替换去掉呀?(比如script等等应该有潜在的危险性,应该去掉,其他的呢?)
呵呵,不知道我说没说清楚,各位给点建议吧
或者您做过类似的的东东,那么您在发表要存到数据库中的时候,会怎样对获取的文章内容做处理呢?

27 个解决方案

#1


需要替换一些符号如"<",'>',引号等
text=replace(text,"<","&lt;")
text=replace(text,">","&gt;")

#2


需要替换一些符号,如'<','>',等等
text=replace(text,"'","'")
text=replace(text,"<","&lt;")
text=replace(text,">","&gt;")

#3


各位帮帮忙吧,谢谢了,分不够再加哟,hoho!

#4


replace(Content,"<script ","〈script")

#5


replace(Content,"<script ","〈script")

#6


我想您没有理解我的意思,实际上我问的是那些标记应该保留
比如<table>,<font>...等等应该保留
所以问的是各位给个建议还有那些标记应该保留(即我支持html,但是有些
标记可能会有危险,我希望去掉等等),最好有做过的给一点例子,谢谢先!
不过还是感谢up那位兄弟,如果要是您那样做,我的html_editor就白做了:)

#7


hehe ,我说的up那位兄弟是指"siekensou(天国之门-安魂曲) ",以免误会
对了,ChinaOK(授人以鱼,不如授人以渔),还有别的嘛?

#8


<img>都有危险,你也过滤吧。呵呵

#9


不会吧<img >过滤了那就没意思了。
现在怎么做也只能是防君子,不防小人了。

我刚才说得也有缺陷,如果别人输入< script  >就不行了。

这个要实现完整过滤就要写一个算法了。没写过。

#10


把<替换就行了呀,不要支持html

#11


就是阻止别人恶意的HTML,或者是Script脚本就是了呗,该过滤什么自己捉摸吧,楼上说的都挺好

#12


hehe ,我自己一直在捉摸,只是我害怕想得不够全,所以让大家讨论一下了!

#13


Function EntityEncode(s)
      
    s = Replace(s, "&", "&amp;")
    s = Replace(s, "<", "&lt;")
    s = Replace(s, ">", "&gt;")
    s = Replace(s, "'", "&apos;")
    s = Replace(s, """", "&quot;")

    EntityEncode = s
End Function

                        
★★★一起去淋雨★★★

#14


哎,看来不太明白我的意思
replace(s,"..","..")
....
这种我明白

我的意思是想问问大家
比如:<table><tr>...<font>...等这种没有什么安全问题的我想保留的说
     但是我希望大家给个建议,类似于那些标记不应该保留(比如:<script>我觉得就不应该保留)

#15


你最好反过来考虑,想想哪些需要。把需要的标签,比如<table>换个方式([table])保存进数据库。其他的就用htmlencode或是其他的方法干掉。等读出的时候再还原就好了嘛。

这是我的一点想法

#16


对,你可以考虑应该保留什么,当然也可以考虑不应该保留什么,,,

#17


hehe,这样也对,看来我需要去看看html了,看看有多少种标记:)
不过我还是希望能够从不能保留的开始吧,毕竟不能保留的少吧:)

#18


哈 关键是字符串的替换技巧了,给你提个醒:
1,"'"符号对于数据库是危险的
2,server.htmlencode可以输出任何非法字串

#19


对了,我考虑了再三,是否就只是<script这种标记给替换掉,其他的不管应该就可以了吧?大家说说?

#20


我想<script>  和<object> 


 这些换掉就可以了.

#21


hoho,我估计有不少人都对这个有兴趣吧,因为也许你们以后也有可能要做吧!

#22


讨论一下吧,"<script",和"<object",呵呵,好像在我印象中"< script"是没有用的,但是"<script >"是可以用的!

#23


所有的<都有危险,不信你用下面这个看看
<img src="javascript:alert('beyond_xiruo');">
还是屏蔽掉<好些
str=replace(str,"<","&lt;")
str=replace(str,">","&gt;")

#24


总应该有方法吧,大家总应该记得yahoo的邮件好像就有这个功能,但是如果有很多问题,那岂不是完蛋了?

#25


用MS的DHTMLEDIT,它自动都给你过滤了,为什么要自己写?

#26


是吗?怎么用呀?

#27


我用msdn上讲的这个,不好用呀!
<OBJECT
   CLASSID="clsid:683364AF-B37D-11D1-ADC5-006008A5848C"
   ID=DHTMLEdit
   HEIGHT=400
   WIDTH=500>
</OBJECT>

#1


需要替换一些符号如"<",'>',引号等
text=replace(text,"<","&lt;")
text=replace(text,">","&gt;")

#2


需要替换一些符号,如'<','>',等等
text=replace(text,"'","'")
text=replace(text,"<","&lt;")
text=replace(text,">","&gt;")

#3


各位帮帮忙吧,谢谢了,分不够再加哟,hoho!

#4


replace(Content,"<script ","〈script")

#5


replace(Content,"<script ","〈script")

#6


我想您没有理解我的意思,实际上我问的是那些标记应该保留
比如<table>,<font>...等等应该保留
所以问的是各位给个建议还有那些标记应该保留(即我支持html,但是有些
标记可能会有危险,我希望去掉等等),最好有做过的给一点例子,谢谢先!
不过还是感谢up那位兄弟,如果要是您那样做,我的html_editor就白做了:)

#7


hehe ,我说的up那位兄弟是指"siekensou(天国之门-安魂曲) ",以免误会
对了,ChinaOK(授人以鱼,不如授人以渔),还有别的嘛?

#8


<img>都有危险,你也过滤吧。呵呵

#9


不会吧<img >过滤了那就没意思了。
现在怎么做也只能是防君子,不防小人了。

我刚才说得也有缺陷,如果别人输入< script  >就不行了。

这个要实现完整过滤就要写一个算法了。没写过。

#10


把<替换就行了呀,不要支持html

#11


就是阻止别人恶意的HTML,或者是Script脚本就是了呗,该过滤什么自己捉摸吧,楼上说的都挺好

#12


hehe ,我自己一直在捉摸,只是我害怕想得不够全,所以让大家讨论一下了!

#13


Function EntityEncode(s)
      
    s = Replace(s, "&", "&amp;")
    s = Replace(s, "<", "&lt;")
    s = Replace(s, ">", "&gt;")
    s = Replace(s, "'", "&apos;")
    s = Replace(s, """", "&quot;")

    EntityEncode = s
End Function

                        
★★★一起去淋雨★★★

#14


哎,看来不太明白我的意思
replace(s,"..","..")
....
这种我明白

我的意思是想问问大家
比如:<table><tr>...<font>...等这种没有什么安全问题的我想保留的说
     但是我希望大家给个建议,类似于那些标记不应该保留(比如:<script>我觉得就不应该保留)

#15


你最好反过来考虑,想想哪些需要。把需要的标签,比如<table>换个方式([table])保存进数据库。其他的就用htmlencode或是其他的方法干掉。等读出的时候再还原就好了嘛。

这是我的一点想法

#16


对,你可以考虑应该保留什么,当然也可以考虑不应该保留什么,,,

#17


hehe,这样也对,看来我需要去看看html了,看看有多少种标记:)
不过我还是希望能够从不能保留的开始吧,毕竟不能保留的少吧:)

#18


哈 关键是字符串的替换技巧了,给你提个醒:
1,"'"符号对于数据库是危险的
2,server.htmlencode可以输出任何非法字串

#19


对了,我考虑了再三,是否就只是<script这种标记给替换掉,其他的不管应该就可以了吧?大家说说?

#20


我想<script>  和<object> 


 这些换掉就可以了.

#21


hoho,我估计有不少人都对这个有兴趣吧,因为也许你们以后也有可能要做吧!

#22


讨论一下吧,"<script",和"<object",呵呵,好像在我印象中"< script"是没有用的,但是"<script >"是可以用的!

#23


所有的<都有危险,不信你用下面这个看看
<img src="javascript:alert('beyond_xiruo');">
还是屏蔽掉<好些
str=replace(str,"<","&lt;")
str=replace(str,">","&gt;")

#24


总应该有方法吧,大家总应该记得yahoo的邮件好像就有这个功能,但是如果有很多问题,那岂不是完蛋了?

#25


用MS的DHTMLEDIT,它自动都给你过滤了,为什么要自己写?

#26


是吗?怎么用呀?

#27


我用msdn上讲的这个,不好用呀!
<OBJECT
   CLASSID="clsid:683364AF-B37D-11D1-ADC5-006008A5848C"
   ID=DHTMLEdit
   HEIGHT=400
   WIDTH=500>
</OBJECT>