标题:Replace(Command1__m_id, "'", "''") 的问题
只看楼主
liujiangmc
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-5-6
 问题点数:0 回复次数:5 
Replace(Command1__m_id, "'", "''") 的问题
if(Request("newsID") <> "") then
Command1__m_id = Request("newsID")
set Command1 = Server.CreateObject(")
Command1.ActiveConnection = MM_news_STRING
= "DELETE FROM news  WHERE n_ID in(" + Replace(Command1__m_id, "'", "''") + ") "
= 1
= 0
Command1.Prepared = true
Command1.Execute()
response.Redirect("news_list.asp")
else
response.write ("<script>alert('您没有选择任何记录!');history.go(-1);</script>")
end if
上段代码中,Replace(Command1__m_id, "'", "''") 这句单引号从何而来,Command1__m_id只是数字啊,没单引号啊?为什么要改成''
搜索更多相关主题的帖子: Replace news response STRING 
2008-05-13 00:07
xxzdm
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2007-8-18
得分:0 
汗..DW可视化开发ASP..建议楼主不要用..那玩意开发出来的..不行..
2008-05-14 13:18
lele2007
Rank: 5Rank: 5
来 自:广东省深圳
等 级:职业侠客
威 望:6
帖 子:1028
专家分:305
注 册:2007-9-4
得分:0 
可能是怕别人用'or'='or'非法登录吧!把获取的  '(单引号)替代成''
估计是这机关报吧!

学习编程www.
2008-05-14 14:05
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
得分:0 
Response.Write Request("newsID")
显示一下这个新闻编号就知道是为什么了。
2008-05-14 16:23
liujiangmc
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2008-5-6
得分:0 
[bo]以下是引用 [un]yms123[/un] 在 2008-5-14 16:23 的发言:[/bo]

Response.Write Request("newsID")
显示一下这个新闻编号就知道是为什么了。

按版主说的做了,出现的结果只是光秃秃的数字,其它什么都没有,没有单引号什么的啊,也许是我没明白版主的意思,请版主说详细点哦,谢谢
2008-05-16 22:32
ilovey4
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2007-6-21
得分:0 
他是把单引号给过滤掉
以后用户再提交带有单引号的字符时,Replace()会将单引号过滤为空。如此一来,提交的特殊字符也就失去了意义。
防止别人进行网站注入的时候用到的

[[it] 本帖最后由 ilovey4 于 2008-5-17 01:27 编辑 [/it]]

新手!
2008-05-17 01:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-214013-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.076227 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved