急啊!问一个XML文件操作的问题,不懂怎么搞!

lchg120 2008-12-01 02:27:50
XM文件:
<?xml version="1.0" encoding="gb2312"?>
<images>
<img>
<url>images/01.jpg</url>
<link>http://www.lanrentuku.com/</link>
</img>
<img>
<url>images/02.jpg</url>
<link>http://www.lanrentuku.com/</link>
</img>
<img>
<url>images/03.jpg</url>
<link>http://www.lanrentuku.com/</link>
</img>
<img>
<url>images/04.jpg</url>
<link>http://www.lanrentuku.com/</link>
</img>
<img>
<url>images/05.jpg</url>
<link>http://www.lanrentuku.com/</link>
</img>
</images>

怎么用ASP通过表单更新XML的数据,
例如我想更新<url></url>之间值为images/05.jpg的节点,该怎么筛选呢?
具体的代码该是怎么样的?
小弟是新手,希望高手帮忙解决!谢谢
...全文
70 点赞 收藏 9
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
lchg120 2008-12-02
出现如下错误:

msxml3.dll (0x80004005)
无法与节点类型 ELEMENT 进行此操作。
/xml/xiu.asp, 第 19 行


怎么搞的?还是 不行
回复
lchg120 2008-12-02
我这就去弄一下,看行不行?
先谢拉!
回复
文盲老顾 2008-12-01
objXdn.parentNode.selectSingleNode("link").nodeValue = linkk
更正为
objXdn.parentNode.selectSingleNode("//link").nodeValue = linkk
回复
文盲老顾 2008-12-01
objXdn.setAttribute "url",imgurll
objXdn.setAttribute "link",linkk

这个是写节点属性的

dim objXdn
set objXdn=objXml.selectSingleNode("//url[value()='"&rqurl&"']")
if objXdn is nothing then
response.write "该节点不存在"
else
objXdn.nodeValue = imgurll
objXdn.parentNode.selectSingleNode("link").nodeValue = linkk
objXML.save(strSourceFile)
Response.Redirect("index.htm")
end if

try this
回复
lchg120 2008-12-01
原来是我搞错了,呵呵!
现在该代码可以运行了,可是有个大问题:
修改后,原来XML的格式:
<img>
<url>images/01.jpg</url>
<link>http://www.lanrentuku.com/</link>
</img>
变成了:

<img url="img/01.jpg" link="http://hao123.com/">
<url>img/01.jpg</url>
<link>http://hao123.com/</link>
</img>
这中格式????

具体是那里错了呢?smartcatiboy 大哥
回复
lchg120 2008-12-01
兄弟?怎么我做的时候,老是显示no such url node
我的代码是:
<% 'UPDATE部分  
linkk=request.form("link")
imgurll=request.form("imgurl")
action=Request.Querystring("action")
if action="update" then
strSourceFile = Server.MapPath("./") & "\top2.xml"
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
objXML.async = false'
objXML.load(strSourceFile)

dim objXdn
set objXdn=objXml.selectSingleNode("//url[value()='"&rqurl&"']")
if objXdn is nothing then
response.write "该节点不存在"
else
objXdn.setAttribute "url",imgurll
objXdn.setAttribute "link",linkk
objXML.save(strSourceFile)
Response.Redirect("index.htm")
end if

end if
%>
回复
alandy 2008-12-01
学习!
回复
smartcatiboy 2008-12-01
dim objXdn
set objXdn=objXml.selectSingleNode("//url[value()='images/05.jpg']")
if objXdn is nothing then
response.write "no such url node."
else
objXdn.setAttribute "url","xxx.jpg"
response.write "change ok"
end if
回复
virgo2008 2008-12-01
写的话用FSO也可以写的,至于读的话,我也是刚刚接触xml,并不是很熟练!
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2008-12-01 02:27
社区公告
暂无公告