Msxml2.DOMDocument asp的使用(测试通过)

来源:互联网 发布:北京邮电网络教育学院 编辑:程序博客网 时间:2024/05/25 23:59

测试通过!!

以下是guestbook.xml文件

<?xml version="1.0" encoding="gb2312"?>
<leaveword>
<wordcontent>
    <Name>秦迷</Name>
    <E_mail>qunmin@gmail.com</E_mail>
    <Website>#</Website>
    <Content>I'm ChyiChin'fan</Content>
</wordcontent>
</leaveword>

以下是ASP的文件

<html>  
<head>  
<title>XML 留言例子</title>  
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">  
</head>  
<body>  
<%  
'判断是否发送了留言,并更新留言信息  
If Request.Querystring("action")<>"" Then  
addEntry'添加留言  
else  
init'初始化  
End If  
%>  
</body>  
</html>  

<%  
Response.Buffer = true'此页面使用缓冲
Response.Expires = -1'立即过期

Function init()  
lyForm()'发送留言表单的函数lyForm()
'定义局部变量  
Dim objXML  
Dim arrNames  
Dim arrEmails  
Dim arrURLS  
Dim arrMessages  

Set objXML = Server.CreateObject("Msxml2.DOMDocument")'创建XMLDOM文档对象,用来保存留言
objXML.async = false'表示同步
objXML.load(Server.MapPath("guestbook.xml"))'加载guestbook.xml文件

Set arrNames    = objXML.getElementsByTagName("Name")'获取guestbook.xml里各元素的集合
Set arrEmails    = objXML.getElementsByTagName("E_mail")  
Set arrURLS    = objXML.getElementsByTagName("Website")  
Set arrMessages = objXML.getElementsByTagName("Content")
%>
  
<table border="1" cellpadding="0" cellspacing="0" bordercolor="#FEEDF5" width="750" align="center">
<tr><td bgcolor="#00CCFF" align="center" height="26">各位的留言如下:</td></tr>

<%
For x=arrNames.length-1 To 0 Step -1
%>
<tr><td>邮件地址:<a href="
mailto:<%=arrEmails.item(x).text%>"><%=arrNames.item(x).text%></a></td></tr>
<tr><td>网址:<a href="<%=arrURLS.item(x).text%>" target="_blank"><%=arrURLS.item(x).text%></a><td></tr>
<tr><td bgcolor="#FEEDF5">留言内容:<%=arrMessages.item(x).text%></td></tr>
<%
Next
%>
</table>
<%
Set objXML = nothing  
End Function  
%>

<%
Function addEntry()'向XML文件添加留言记录的函数
'定义局部变量  
Dim strName  
Dim strEmail  
Dim strURL  
Dim strMessage  
  
strName = Request.Form("Name")'取得留言表单的输入内容
strEmail = Request.Form("E_mail")  
strURL = Request.Form("Website")  
strMessage = Request.Form("Content")  
Dim objXML  
Dim objEntry  
Dim objName  
Dim objEmail  
Dim objURL  
Dim objMessage  
  
Set objXML = server.createObject("Msxml2.DOMDocument")'创建XMLDOM文档对象,用来创建节点
objXML.async = false'表示同步
objXML.load(server.MapPath("guestbook.xml"))'加载guestbook.xml  

Set objEntry = objXML.createNode("element", "wordcontent", "")'创建<wordcontent></wordcontent>节点
objXML.documentElement.appendChild(objEntry)

Set objName = objXML.createNode("element", "Name", "")'创建<Name></Name>节点
objEntry.appendChild(objName)  
objName.text = strName  
Set objEmail = objXML.createNode("element", "E_mail", "")'创建<E_mail></E_mail>节点
objEntry.appendChild(objEmail)  
objEmail.text = strEmail  
Set objURL = objXML.createNode("element", "Website", "")'创建<Website></Website>节点
objEntry.appendChild(objURL)  
objURL.text = strURL  
Set objMessage = objXML.createNode("element", "Content", "")'创建<Content></Content>节点
objEntry.appendChild(objMessage)  
objMessage.text = strMessage

objXML.save(server.MapPath("guestbook.xml"))'留言保存到guestbook.xml
Response.Redirect("guestbook.asp")  
End function  
%>

<%
Function lyForm()'发送留言表单的函数lyForm()  
%>
<p align="center"><b>XML留言板</b></p>
<hr align="center" width="750" noshade color="#000099">
<form action=guestbook.asp?action=addEntry method=post>
<table border=1 cellpadding=0 cellspacing=0 bordercolor=#FEEDF5 align=center width=750>  
<tr><td width="292" align="right">姓 名:</td>
<td width="452"><input type=text name=Name /></td></tr>
<tr><td align="right">电子邮件:</td>
<td><input type=text name=E_mail /></td></tr>
<tr><td align="right">网 址:</td>
<td><input type=text name=Website /></td></tr>  
<tr><td align="right">留言内容:</td>
<td><textarea name=Content cols=40 rows=5 id="Content"></textarea></td></tr>
<tr><td colspan="2" align="center"><input type=submit value=发布留言 />&nbsp;<input type="reset" name="Submit" value="重 置" />
</td></tr>  
</table>
</form>
<%
End Function  
%>  

原创粉丝点击