答案:六、建立写新留言程序(PostNew.asp)
这个文件要实现的功能就是写入新的XML节点,首先创建一个XML对像然后把XML读入内存中,利用appendChild()方法加入我们生成的XML节点。
<% username=request.form("username") if username<>"" then fromwhere =request.form("fromwhere") homepage =request.form("homepage") email =request.form("email") text =request.form("text") text =replace(text,"<","<") Posttime =now() strSourceFile = Server.MapPath("/") & "\List.xml" '获取XML文件的路径这里根据你的虚拟目录不同而不同 Set objXML = Server.CreateObject("Microsoft.XMLDOM") '创建XML对像 objXML.load(strSourceFile) '把XML文件读入内存中 Set objRootlist = objXML.documentElement.selectSingleNode("NewList") '选取<NewList>节点 if objRootlist.hasChildNodes then '判断<NewList>是否有子节点(因为如果是每一次<NewList>是没有子节点的, ’ 如果不加判断在第一次运得时就会报错 id = objRootlist.lastchild.firstchild.text+1 '这里获得将要插入子节点的ID号,其ID号为<NewList>的最后一个子节点(lastchild)的第一个子节点(firstchild)的ID号加1(这里我们按照关系型数据库的ID号来递增) else '如是没有字子节点则是第一次留言ID号设为1 id=1 end if brstr=chr(13)&chr(10)&chr(9) '为了插入XML文件中的节点换行空格排列整齐 ’(当然你也可以不用这样只是为了XML数据好看而以) XMLnode=brstr&"<list>"&brstr & _ "<id>"&id&"</id>"&brstr & _ "<username>"&username&"</username>"&brstr & _ "<fromwhere>"&fromwhere&"</fromwhere>"&brstr & _ "<Posttime>"&Posttime&"</Posttime>"&brstr & _ "<homepage>"&homepage&"</homepage>"&brstr & _ "<email>"&email&"</email>"&brstr & _ "<text>"&text&"</text>"&brstr & _ "</list>"&chr(13) '根据得到的数据建立XML片段 set objXML2=Server.CreateObject("Microsoft.XMLDOM") '建立一个新XML对像 objXML2.loadXML(XMLnode) '把XML版片段读入内存中 set rootNewNode=objXML2.documentElement '获得objXML2的根节点 objRootlist.appendChild(rootNewNode) '把XML片段插入到List.xml中 objXML.save(strSourceFile) '存储lsit.xml文件(因为不存储List.xml只在内存中更新了) set objXML=nothing set objXML2=nothing response.write "谢谢您的留言" response.end end if %> <html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <style type="text/css"> <!-- td { font-size: 9pt} --> </style> </head> <body bgcolor="#0099CC" text="#000000"> <table width="80%" border="0" cellspacing="1" cellpadding="4" align="center" bgcolor="#FFFFFF"> <form action="PostNew.asp" method="post" name="form1"> <tr bgcolor="#000000"> <td colspan="2"><font color="#FFFFFF">新留言</font></td> </tr> <tr bgcolor="#EFEFEF"> <td width="19%" align="right">姓 名:</td> <td width="81%"> <input type="text" name="username"> ** </td> </tr> <tr bgcolor="#EFEFEF"> <td width="19%" align="right">来 自:</td> <td width="81%"> <input type="text" name="fromwhere" value="中国"> </td> </tr> <tr bgcolor="#EFEFEF"> <td width="19%" align="right">主 页:</td> <td width="81%"> <input type="text" name="homepage" value="http://"> </td> </tr> <tr bgcolor="#EFEFEF"> <td width="19%" align="right">Email:</td> <td width="81%"> <input type="text" name="email"> </td> </tr> <tr bgcolor="#EFEFEF"> <td width="19%" align="right" valign="top">内 容:</td> <td width="81%"> <textarea name="text" cols="60" rows="10"></textarea> </td> </tr> <tr bgcolor="#EFEFEF"> <td width="19%" align="right"> </td> <td width="81%"> <input type="submit" name="Submit" value="提交"> <input type="reset" name="Submit2" value="重填"> </td> </tr> </form> </table> </body> </html> 上一个:两台服务器用XML 连接数据啊 更多图片编程知识:
访问www.zzzyk.com 试试 CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络, |