本站的http://www.csdn.net/Develop/Add_Article.asp
我想听听各位的建议,在我获取内容(html标记)后,在要保存到数据库之前的检查中那些应该保留,那些应该替换去掉呀?(比如script等等应该有潜在的危险性,应该去掉,其他的呢?)
呵呵,不知道我说没说清楚,各位给点建议吧
或者您做过类似的的东东,那么您在发表要存到数据库中的时候,会怎样对获取的文章内容做处理呢?
27 个解决方案
#1
需要替换一些符号如"<",'>',引号等
text=replace(text,"<","<")
text=replace(text,">",">")
text=replace(text,"<","<")
text=replace(text,">",">")
#2
需要替换一些符号,如'<','>',等等
text=replace(text,"'","'")
text=replace(text,"<","<")
text=replace(text,">",">")
text=replace(text,"'","'")
text=replace(text,"<","<")
text=replace(text,">",">")
#3
各位帮帮忙吧,谢谢了,分不够再加哟,hoho!
#4
replace(Content,"<script ","〈script")
#5
replace(Content,"<script ","〈script")
#6
我想您没有理解我的意思,实际上我问的是那些标记应该保留
比如<table>,<font>...等等应该保留
所以问的是各位给个建议还有那些标记应该保留(即我支持html,但是有些
标记可能会有危险,我希望去掉等等),最好有做过的给一点例子,谢谢先!
不过还是感谢up那位兄弟,如果要是您那样做,我的html_editor就白做了:)
比如<table>,<font>...等等应该保留
所以问的是各位给个建议还有那些标记应该保留(即我支持html,但是有些
标记可能会有危险,我希望去掉等等),最好有做过的给一点例子,谢谢先!
不过还是感谢up那位兄弟,如果要是您那样做,我的html_editor就白做了:)
#7
hehe ,我说的up那位兄弟是指"siekensou(天国之门-安魂曲) ",以免误会
对了,ChinaOK(授人以鱼,不如授人以渔),还有别的嘛?
对了,ChinaOK(授人以鱼,不如授人以渔),还有别的嘛?
#8
<img>都有危险,你也过滤吧。呵呵
#9
不会吧<img >过滤了那就没意思了。
现在怎么做也只能是防君子,不防小人了。
我刚才说得也有缺陷,如果别人输入< script >就不行了。
这个要实现完整过滤就要写一个算法了。没写过。
现在怎么做也只能是防君子,不防小人了。
我刚才说得也有缺陷,如果别人输入< script >就不行了。
这个要实现完整过滤就要写一个算法了。没写过。
#10
把<替换就行了呀,不要支持html
#11
就是阻止别人恶意的HTML,或者是Script脚本就是了呗,该过滤什么自己捉摸吧,楼上说的都挺好
#12
hehe ,我自己一直在捉摸,只是我害怕想得不够全,所以让大家讨论一下了!
#13
Function EntityEncode(s)
s = Replace(s, "&", "&")
s = Replace(s, "<", "<")
s = Replace(s, ">", ">")
s = Replace(s, "'", "'")
s = Replace(s, """", """)
EntityEncode = s
End Function
★★★一起去淋雨★★★
s = Replace(s, "&", "&")
s = Replace(s, "<", "<")
s = Replace(s, ">", ">")
s = Replace(s, "'", "'")
s = Replace(s, """", """)
EntityEncode = s
End Function
★★★一起去淋雨★★★
#14
哎,看来不太明白我的意思
replace(s,"..","..")
....
这种我明白
我的意思是想问问大家
比如:<table><tr>...<font>...等这种没有什么安全问题的我想保留的说
但是我希望大家给个建议,类似于那些标记不应该保留(比如:<script>我觉得就不应该保留)
replace(s,"..","..")
....
这种我明白
我的意思是想问问大家
比如:<table><tr>...<font>...等这种没有什么安全问题的我想保留的说
但是我希望大家给个建议,类似于那些标记不应该保留(比如:<script>我觉得就不应该保留)
#15
你最好反过来考虑,想想哪些需要。把需要的标签,比如<table>换个方式([table])保存进数据库。其他的就用htmlencode或是其他的方法干掉。等读出的时候再还原就好了嘛。
这是我的一点想法
这是我的一点想法
#16
对,你可以考虑应该保留什么,当然也可以考虑不应该保留什么,,,
#17
hehe,这样也对,看来我需要去看看html了,看看有多少种标记:)
不过我还是希望能够从不能保留的开始吧,毕竟不能保留的少吧:)
不过我还是希望能够从不能保留的开始吧,毕竟不能保留的少吧:)
#18
哈 关键是字符串的替换技巧了,给你提个醒:
1,"'"符号对于数据库是危险的
2,server.htmlencode可以输出任何非法字串
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,"<","<")
str=replace(str,">",">")
<img src="javascript:alert('beyond_xiruo');">
还是屏蔽掉<好些
str=replace(str,"<","<")
str=replace(str,">",">")
#24
总应该有方法吧,大家总应该记得yahoo的邮件好像就有这个功能,但是如果有很多问题,那岂不是完蛋了?
#25
用MS的DHTMLEDIT,它自动都给你过滤了,为什么要自己写?
#26
是吗?怎么用呀?
#27
我用msdn上讲的这个,不好用呀!
<OBJECT
CLASSID="clsid:683364AF-B37D-11D1-ADC5-006008A5848C"
ID=DHTMLEdit
HEIGHT=400
WIDTH=500>
</OBJECT>
<OBJECT
CLASSID="clsid:683364AF-B37D-11D1-ADC5-006008A5848C"
ID=DHTMLEdit
HEIGHT=400
WIDTH=500>
</OBJECT>
#1
需要替换一些符号如"<",'>',引号等
text=replace(text,"<","<")
text=replace(text,">",">")
text=replace(text,"<","<")
text=replace(text,">",">")
#2
需要替换一些符号,如'<','>',等等
text=replace(text,"'","'")
text=replace(text,"<","<")
text=replace(text,">",">")
text=replace(text,"'","'")
text=replace(text,"<","<")
text=replace(text,">",">")
#3
各位帮帮忙吧,谢谢了,分不够再加哟,hoho!
#4
replace(Content,"<script ","〈script")
#5
replace(Content,"<script ","〈script")
#6
我想您没有理解我的意思,实际上我问的是那些标记应该保留
比如<table>,<font>...等等应该保留
所以问的是各位给个建议还有那些标记应该保留(即我支持html,但是有些
标记可能会有危险,我希望去掉等等),最好有做过的给一点例子,谢谢先!
不过还是感谢up那位兄弟,如果要是您那样做,我的html_editor就白做了:)
比如<table>,<font>...等等应该保留
所以问的是各位给个建议还有那些标记应该保留(即我支持html,但是有些
标记可能会有危险,我希望去掉等等),最好有做过的给一点例子,谢谢先!
不过还是感谢up那位兄弟,如果要是您那样做,我的html_editor就白做了:)
#7
hehe ,我说的up那位兄弟是指"siekensou(天国之门-安魂曲) ",以免误会
对了,ChinaOK(授人以鱼,不如授人以渔),还有别的嘛?
对了,ChinaOK(授人以鱼,不如授人以渔),还有别的嘛?
#8
<img>都有危险,你也过滤吧。呵呵
#9
不会吧<img >过滤了那就没意思了。
现在怎么做也只能是防君子,不防小人了。
我刚才说得也有缺陷,如果别人输入< script >就不行了。
这个要实现完整过滤就要写一个算法了。没写过。
现在怎么做也只能是防君子,不防小人了。
我刚才说得也有缺陷,如果别人输入< script >就不行了。
这个要实现完整过滤就要写一个算法了。没写过。
#10
把<替换就行了呀,不要支持html
#11
就是阻止别人恶意的HTML,或者是Script脚本就是了呗,该过滤什么自己捉摸吧,楼上说的都挺好
#12
hehe ,我自己一直在捉摸,只是我害怕想得不够全,所以让大家讨论一下了!
#13
Function EntityEncode(s)
s = Replace(s, "&", "&")
s = Replace(s, "<", "<")
s = Replace(s, ">", ">")
s = Replace(s, "'", "'")
s = Replace(s, """", """)
EntityEncode = s
End Function
★★★一起去淋雨★★★
s = Replace(s, "&", "&")
s = Replace(s, "<", "<")
s = Replace(s, ">", ">")
s = Replace(s, "'", "'")
s = Replace(s, """", """)
EntityEncode = s
End Function
★★★一起去淋雨★★★
#14
哎,看来不太明白我的意思
replace(s,"..","..")
....
这种我明白
我的意思是想问问大家
比如:<table><tr>...<font>...等这种没有什么安全问题的我想保留的说
但是我希望大家给个建议,类似于那些标记不应该保留(比如:<script>我觉得就不应该保留)
replace(s,"..","..")
....
这种我明白
我的意思是想问问大家
比如:<table><tr>...<font>...等这种没有什么安全问题的我想保留的说
但是我希望大家给个建议,类似于那些标记不应该保留(比如:<script>我觉得就不应该保留)
#15
你最好反过来考虑,想想哪些需要。把需要的标签,比如<table>换个方式([table])保存进数据库。其他的就用htmlencode或是其他的方法干掉。等读出的时候再还原就好了嘛。
这是我的一点想法
这是我的一点想法
#16
对,你可以考虑应该保留什么,当然也可以考虑不应该保留什么,,,
#17
hehe,这样也对,看来我需要去看看html了,看看有多少种标记:)
不过我还是希望能够从不能保留的开始吧,毕竟不能保留的少吧:)
不过我还是希望能够从不能保留的开始吧,毕竟不能保留的少吧:)
#18
哈 关键是字符串的替换技巧了,给你提个醒:
1,"'"符号对于数据库是危险的
2,server.htmlencode可以输出任何非法字串
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,"<","<")
str=replace(str,">",">")
<img src="javascript:alert('beyond_xiruo');">
还是屏蔽掉<好些
str=replace(str,"<","<")
str=replace(str,">",">")
#24
总应该有方法吧,大家总应该记得yahoo的邮件好像就有这个功能,但是如果有很多问题,那岂不是完蛋了?
#25
用MS的DHTMLEDIT,它自动都给你过滤了,为什么要自己写?
#26
是吗?怎么用呀?
#27
我用msdn上讲的这个,不好用呀!
<OBJECT
CLASSID="clsid:683364AF-B37D-11D1-ADC5-006008A5848C"
ID=DHTMLEdit
HEIGHT=400
WIDTH=500>
</OBJECT>
<OBJECT
CLASSID="clsid:683364AF-B37D-11D1-ADC5-006008A5848C"
ID=DHTMLEdit
HEIGHT=400
WIDTH=500>
</OBJECT>