欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

用ASP+XML打造留言本(3)

程序员文章站 2022-04-02 22:40:23
  六、建立写新留言程序(postnew.)  这个文件要实现的功能就是写入新的xml(标准化越来越近了)节点,首先创建一个xml(标准化越来越近了)对像然后把xml(标准化越来越...


  六、建立写新留言程序(postnew.)

  这个文件要实现的功能就是写入新的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.xml(标准化越来越近了)dom")
创建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(标准化越来越近了)数据好看而以)
xml(标准化越来越近了)node=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 objxml(标准化越来越近了)2=server.createobject("microsoft.xml(标准化越来越近了)dom")
建立一个新xml(标准化越来越近了)对像
objxml(标准化越来越近了)2.loadxml(标准化越来越近了)(xml(标准化越来越近了)node)
把xml(标准化越来越近了)版片段读入内存中
set rootnewnode=objxml(标准化越来越近了)2.documentelement
获得objxml(标准化越来越近了)2的根节点
objrootlist.appendchild(rootnewnode)
把xml(标准化越来越近了)片段插入到list.xml(标准化越来越近了)
objxml(标准化越来越近了).save(strsourcefile)
存储lsit.xml(标准化越来越近了)文件(因为不存储list.xml(标准化越来越近了)只在内存中更新了)
set objxml(标准化越来越近了)=nothing
set objxml(标准化越来越近了)2=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%">