ASP网站制作之将HTML表双数据存储为XML格局 - 2
帮助用户快速实现各种应用服务,ASP商有整合各方面资源的能力,可在短期内为用户提供所需的解决方案。例如,典型的ERP安装,如果要在客户端安装的话需要半年到二年的时间,但是美国的一些ASP商如USI和CORIO能在90—120天内提供ERP应用方案。文档被存档以后,假如你再翻开这个文档,那末则会以以下代码列表情势呈现:MyXMLDoc.xml:
<?xmlversion="1.0"?>
<rootElement>
<childElement1/>
<childElement2/>
</rootElement>
在"MyXMLDoc.xml"文档中,childElement1和childElement2会以空的elements情势呈现。假如它们被赋值,那末每
个值都将由标志符括起来。
如今,让我们来思索一下怎样将HTML数据写到XML文档中往。我们已晓得该怎样创立和存储XML文档。将一个表双数
据写到XML文档中往的历程,如今已演化成为RequestObject"sFormCollection和将每个表单域的value书定到XML
elementvalue中往的步骤反复。以上能够经由过程ASP来完成。
例:将数据保送到XML
如今,我们举一个一般的HTML表单的例子来讲明。此Form有效户名,地点,德律风,和E-MAIL等几个域。并将这些信
息写进XML文件中并保留。
EnterContact.html:
<html>
<head>
<title>
ContactInformation
</title>
</head>
<body>
<formaction="processForm.asp"method="post">
<h3>请输出你的接洽体例</h3>
FirstName:<inputtype="text"id="firstName"name="firstName"><br>
LastName:<inputtype="text"id="lastName"name="lastName"><br>
Address#1:<inputtype="text"id="address1"name="address1"><br>
Address#2:<inputtype="text"id="address2"name="address2"><br>
PhoneNumber:<inputtype="text"id="phone"name="phone"><br>
E-Mail:<inputtype="text"id="email"name="email"><br>
<inputtype="submit"id="btnSub"name="btnSub"value="Submit"><br>
</form>
</body>
</html>
将Form中数据发送到processForm.asp.。这是一个ASP页面,在这个ASP中将重复挪用统一个函数将form数据写进XML
文件。
processForm.asp:
<%
"--------------------------------------------------------------------
"The"ConvertFormtoXML"Functionacceptstoparameters.
"strXMLFilePath-ThephysicalpathwheretheXMLfilewillbesaved.
"strFileName-ThenameoftheXMLfilethatwillbesaved.
"--------------------------------------------------------------------
FunctionConvertFormtoXML(strXMLFilePath,strFileName)
"Declarelocalvariables.
DimobjDom
DimobjRoot
DimobjField
DimobjFieldValue
DimobjattID
DimobjattTabOrder
DimobjPI
Dimx
"InstantiatetheMicrosoftXMLDOM.
SetobjDom=server.CreateObject("Microsoft.XMLDOM")
objDom.preserveWhiteSpace=True
"CreateyourrootelementandappendittotheXMLdocument.
SetobjRoot=objDom.createElement("contact")
objDom.appendChildobjRoot
"IteratethroughtheFormCollectionoftheRequestObject.
Forx=1ToRequest.Form.Count
"Checktoseeif"btn"isinthenameoftheformelement.
"Ifitis,thenitisabuttonandwedonotwanttoaddit
"totheXMLdocument.
Ifinstr(1,Request.Form.Key(x),"btn")=0Then
"Createanelement,"field".
SetobjField=objDom.createElement("field")
"Createanattribute,"id".
SetobjattID=objDom.createAttribute("id")
"Setthevalueoftheidattributeequalthethenameof
"thecurrentformfield.
objattID.Text=Request.Form.Key(x)
"ThesetAttributeNodemethodwillappendtheidattribute
"tothefieldelement.
objField.setAttributeNodeobjattID
"Createanotherattribute,"taborder".Thisjustordersthe
"elements.
SetobjattTabOrder=objDom.createAttribute("taborder")
"Setthevalueofthetaborderattribute.
objattTabOrder.Text=x
"Appendthetaborderattributetothefieldelement.
objField.setAttributeNodeobjattTabOrder
"Createanewelement,"field_value".
SetobjFieldValue=objDom.createElement("field_value")
"Setthevalueofthefield_valueelementequalto
"thevalueofthecurrentfieldintheFormCollection.
objFieldValue.Text=Request.Form(x)
"Appendthefieldelementasachildoftherootelement.
objRoot.appendChildobjField
"Appendthefield_valueelementasachildofthefieldelemnt.
objField.appendChildobjFieldValue
EndIf
Next
"Createthexmlprocessinginstruction.
SetobjPI=objDom.createProcessingInstruction("xml","version="1.0"")
"AppendtheprocessinginstructiontotheXMLdocument.
objDom.insertBeforeobjPI,objDom.childNodes(0)
"SavetheXMLdocument.
objDom.savestrXMLFilePath&""&strFileName
"Releaseallofyourobjectreferences.
SetobjDom=Nothing
SetobjRoot=Nothing
SetobjField=Nothing
SetobjFieldValue=Nothing
SetobjattID=Nothing
SetobjattTabOrder=Nothing
SetobjPI=Nothing
EndFunction
"Donotbreakonanerror.
OnErrorResumeNext
"CalltheConvertFormtoXMLfunction,passinginthephysicalpathto
"savethefiletoandthenamethatyouwishtouseforthefile.
ConvertFormtoXML"c:","Contact.xml"
"Testtoseeifanerroroccurred,ifso,lettheuserknow.
"Otherwise,telltheuserthattheoperationwassuccessful.
Iferr.number0then
Response.write("Errorsoccurredwhilesavingyourformsubmission.")
Else
Response.write("Yourformsubmissionhasbeensaved.")
EndIf
%>
缺乏可以共同遵循的行业标准,ASP还处在发展初期,大家对它的理解不同,如产品和服务标准,收费标准等,不利于行业的健康发展。 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题: 在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。 我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。 Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件 Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件 ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:
页:
[1]