您的位置:首页网页设计ASP实例 → 用ASP+XML打造留言本3

用ASP+XML打造留言本3

时间:2004/11/7 2:55:00来源:本站整理作者:蓝点我要评论(0)





  六、建立写新留言程序(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>




相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 迅雷新手完全入门手册 asp下面javascript上传图片限制格式大小方法告诉大家网页弹出窗口应用总结ASP常见错误类型大全asp常见错误分析和解决办法

人气排行 总是弹出visual studio 实时调试器 三种解决SQLSERVER存储过程及调用详解Asp获取真实IP地址ASP中连接Mssql的几种方法一个简单好用的UBB编辑器(含代码)如何用Split将字符串转换为数组并获取数组下ASP防止表单重复提交的办法告诉你免费的简单聊天室源代码