将HTML表单数据存储为XML格式 - 2
敬业的IT人
互联网
佚名
2008-4-14 17:17:05
文档被存档之后,如果你再打开这个文档,那么则会以如下代码列表形式出现:
Myxml(标准化越来越近了)Doc.xml(标准化越来越近了):
<?xml(标准化越来越近了) version="1.0"?>
<rootElement>
<childElement1 />
<childElement2 />
</rootElement>
在"Myxml(标准化越来越近了)Doc.xml(标准化越来越近了)"文档中,childElement1 和 childElement2 会以空的elements形式出现。如果它们被赋值,那么每
个值都将由标记符括起来。
现在,让我们来思考一下如何将HTML数据写到xml(标准化越来越近了)文档中去。我们已经知道该如何创建和存储xml(标准化越来越近了)文档。将一个表单数
据写到xml(标准化越来越近了)文档中去的过程,现在已演变成为Request Object"s Form Collection以及将每一个表单域的value书定到xml(标准化越来越近了)
element value 中去的步骤重复。以上可以通过ASP来完成。
例:将数据输送到xml(标准化越来越近了)
现在,我们举一个普通的HTML表单的例子来说明。此Form有用户名,地址,电话,以及E-MAIL等几个域。并将这些信
息写入xml(标准化越来越近了)文件中并保存。
EnterContact.html:
<html>
<head>
<title>
Contact Information
</title>
</head>
<body>
<form action="processForm.asp" method="post">
<h3>请输入你的联系方式</h3>
First Name: <input type="text" id="firstName" name="firstName"><br>
Last Name: <input type="text" id="lastName" name="lastName"><br>
Address #1: <input type="text" id="address1" name="address1"><br>
Address #2: <input type="text" id="address2" name="address2"><br>
Phone Number: <input type="text" id="phone" name="phone"><br>
E-Mail: <input type="text" id="email" name="email"><br>
<input type="submit" id="btnSub" name="btnSub" value="Submit"><br>
</form>
</body>
</html>
将Form 中数据发送到processForm.asp.。这是一个ASP页面,在这个ASP中将反复调用同一个函数将form数据写入xml(标准化越来越近了)
文件。
processForm.asp:
<%
"--------------------------------------------------------------------
"The "ConvertFormtoxml(标准化越来越近了)" Function accepts to parameters.
"strxml(标准化越来越近了)FilePath - The physical path where the xml(标准化越来越近了) file will be saved.
"strFileName - The name of the xml(标准化越来越近了) file that will be saved.
"--------------------------------------------------------------------
Function ConvertFormtoxml(标准化越来越近了)(strxml(标准化越来越近了)FilePath, strFileName)
"Declare local variables.
Dim objDom
Dim objRoot
Dim objField
Dim objFieldValue
Dim objattID
Dim objattTabOrder
Dim objPI
Dim x
"Instantiate the Microsoft xml(标准化越来越近了)DOM.
Set objDom = server.CreateObject("Microsoft.xml(标准化越来越近了)DOM")
objDom.preserveWhiteSpace = True
"Create your root element and append it to the xml(标准化越来越近了) document.
Set objRoot = objDom.createElement("contact")
objDom.appendChild objRoot
"Iterate through the Form Collection of the Request Object.
For x = 1 To Request.Form.Count
"Check to see if "btn" is in the name of the form element.
"If it is, then it is a button and we do not want to add it
"to the xml(标准化越来越近了) document.
If instr(1,Request.Form.Key(x),"btn") = 0 Then
"Create an element, "field".
Set objField = objDom.createElement("field")
"Create an attribute, "id".
Set objattID = objDom.createAttribute("id")
"Set the value of the id attribute equal the the name of
"the current form field.
objattID.Text = Request.Form.Key(x)
"The setAttributeNode method will append the id attribute
"to the field element.
objField.setAttributeNode objattID
"Create another attribute, "taborder". This just orders the
"elements.
Set objattTabOrder = objDom.createAttribute("taborder")
"Set the value of the taborder attribute.
objattTabOrder.Text = x
"Append the taborder attribute to the field element.
objField.setAttributeNode objattTabOrder
"Create a new element, "field_value".
Set objFieldValue = objDom.createElement("field_value")
"Set the value of the field_value element equal to
"the value of the current field in the Form Collection.
objFieldValue.Text = Request.Form(x)
"Append the field element as a child of the root element.
objRoot.appendChild objField
"Append the field_value element as a child of the field elemnt.
objField.appendChild objFieldValue
End If
Next
"Create the xml(标准化越来越近了) processing instruction.
Set objPI = objDom.createProcessingInstruction("xml(标准化越来越近了)", "version="1.0"")
"Append the processing instruction to the xml(标准化越来越近了) document.
objDom.insertBefore objPI, objDom.childNodes(0)
"Save the xml(标准化越来越近了) document.
objDom.save strxml(标准化越来越近了)FilePath & "\" & strFileName
"Release all of your object references.
Set objDom = Nothing
Set objRoot = Nothing
Set objField = Nothing
Set objFieldValue = Nothing
Set objattID = Nothing
Set objattTabOrder = Nothing
Set objPI = Nothing
End Function
"Do not break>
Myxml(标准化越来越近了)Doc.xml(标准化越来越近了):
<?xml(标准化越来越近了) version="1.0"?>
<rootElement>
<childElement1 />
<childElement2 />
</rootElement>
在"Myxml(标准化越来越近了)Doc.xml(标准化越来越近了)"文档中,childElement1 和 childElement2 会以空的elements形式出现。如果它们被赋值,那么每
个值都将由标记符括起来。
现在,让我们来思考一下如何将HTML数据写到xml(标准化越来越近了)文档中去。我们已经知道该如何创建和存储xml(标准化越来越近了)文档。将一个表单数
据写到xml(标准化越来越近了)文档中去的过程,现在已演变成为Request Object"s Form Collection以及将每一个表单域的value书定到xml(标准化越来越近了)
element value 中去的步骤重复。以上可以通过ASP来完成。
例:将数据输送到xml(标准化越来越近了)
现在,我们举一个普通的HTML表单的例子来说明。此Form有用户名,地址,电话,以及E-MAIL等几个域。并将这些信
息写入xml(标准化越来越近了)文件中并保存。
EnterContact.html:
<html>
<head>
<title>
Contact Information
</title>
</head>
<body>
<form action="processForm.asp" method="post">
<h3>请输入你的联系方式</h3>
First Name: <input type="text" id="firstName" name="firstName"><br>
Last Name: <input type="text" id="lastName" name="lastName"><br>
Address #1: <input type="text" id="address1" name="address1"><br>
Address #2: <input type="text" id="address2" name="address2"><br>
Phone Number: <input type="text" id="phone" name="phone"><br>
E-Mail: <input type="text" id="email" name="email"><br>
<input type="submit" id="btnSub" name="btnSub" value="Submit"><br>
</form>
</body>
</html>
将Form 中数据发送到processForm.asp.。这是一个ASP页面,在这个ASP中将反复调用同一个函数将form数据写入xml(标准化越来越近了)
文件。
processForm.asp:
<%
"--------------------------------------------------------------------
"The "ConvertFormtoxml(标准化越来越近了)" Function accepts to parameters.
"strxml(标准化越来越近了)FilePath - The physical path where the xml(标准化越来越近了) file will be saved.
"strFileName - The name of the xml(标准化越来越近了) file that will be saved.
"--------------------------------------------------------------------
Function ConvertFormtoxml(标准化越来越近了)(strxml(标准化越来越近了)FilePath, strFileName)
"Declare local variables.
Dim objDom
Dim objRoot
Dim objField
Dim objFieldValue
Dim objattID
Dim objattTabOrder
Dim objPI
Dim x
"Instantiate the Microsoft xml(标准化越来越近了)DOM.
Set objDom = server.CreateObject("Microsoft.xml(标准化越来越近了)DOM")
objDom.preserveWhiteSpace = True
"Create your root element and append it to the xml(标准化越来越近了) document.
Set objRoot = objDom.createElement("contact")
objDom.appendChild objRoot
"Iterate through the Form Collection of the Request Object.
For x = 1 To Request.Form.Count
"Check to see if "btn" is in the name of the form element.
"If it is, then it is a button and we do not want to add it
"to the xml(标准化越来越近了) document.
If instr(1,Request.Form.Key(x),"btn") = 0 Then
"Create an element, "field".
Set objField = objDom.createElement("field")
"Create an attribute, "id".
Set objattID = objDom.createAttribute("id")
"Set the value of the id attribute equal the the name of
"the current form field.
objattID.Text = Request.Form.Key(x)
"The setAttributeNode method will append the id attribute
"to the field element.
objField.setAttributeNode objattID
"Create another attribute, "taborder". This just orders the
"elements.
Set objattTabOrder = objDom.createAttribute("taborder")
"Set the value of the taborder attribute.
objattTabOrder.Text = x
"Append the taborder attribute to the field element.
objField.setAttributeNode objattTabOrder
"Create a new element, "field_value".
Set objFieldValue = objDom.createElement("field_value")
"Set the value of the field_value element equal to
"the value of the current field in the Form Collection.
objFieldValue.Text = Request.Form(x)
"Append the field element as a child of the root element.
objRoot.appendChild objField
"Append the field_value element as a child of the field elemnt.
objField.appendChild objFieldValue
End If
Next
"Create the xml(标准化越来越近了) processing instruction.
Set objPI = objDom.createProcessingInstruction("xml(标准化越来越近了)", "version="1.0"")
"Append the processing instruction to the xml(标准化越来越近了) document.
objDom.insertBefore objPI, objDom.childNodes(0)
"Save the xml(标准化越来越近了) document.
objDom.save strxml(标准化越来越近了)FilePath & "\" & strFileName
"Release all of your object references.
Set objDom = Nothing
Set objRoot = Nothing
Set objField = Nothing
Set objFieldValue = Nothing
Set objattID = Nothing
Set objattTabOrder = Nothing
Set objPI = Nothing
End Function
"Do not break>
- 最新文章
- 利用ASP实现三个强大功能之二[04-14]
- 利用ASP实现三个强大功能之三[04-14]
- 用表单来提交sql - 2[04-14]
- 用表单来提交sql - 3[04-14]
- 用SQL Server为Web浏览器提供图像1[04-14]
- 用SQL Server为Web浏览器提供图像2[04-14]
- 相关文章
- 用ASP、VB和XML建立互联网应用程序(1)[04-14]
- 用ASP、VB和XML建立互联网应用程序(2)[04-14]
- 用ASP、VB和XML建立互联网应用程序(3)[04-14]
- 用ASP、VB和XML建立互联网应用程序(4)[04-14]
- 用XSL.ASP编辑XML文档[04-14]
- 将HTML表单数据存储为XML格式 - 3[04-14]
