深爱那片海 发表于 2015-1-16 22:28:14

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还处在发展初期,大家对它的理解不同,如产品和服务标准,收费标准等,不利于行业的健康发展。

山那边是海 发表于 2015-1-19 13:44:15

运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。

爱飞 发表于 2015-1-25 11:14:42

ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:

再现理想 发表于 2015-2-2 21:52:22

在平时的学习过程中要注意现学现用,注重运用,在掌握了一定的基础知识后,我们可以尝试做一些网页,也许在开始的时候我们可能会遇到很多问题,比如说如何很好的构建基本框架。

分手快乐 发表于 2015-2-8 07:47:33

我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。

蒙在股里 发表于 2015-2-25 01:06:45

Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件

兰色精灵 发表于 2015-3-7 15:00:14

Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件

柔情似水 发表于 2015-3-21 22:24:27

ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:
页: [1]
查看完整版本: ASP网站制作之将HTML表双数据存储为XML格局 - 2