XML是一種基于文本格式的元標(biāo)記語言,它注重對(duì)數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)意義的描述,實(shí)現(xiàn)了數(shù)據(jù)內(nèi)容和顯示樣式的分離(xml+xsl),而且是與平臺(tái)無關(guān)的。
由于XML注重?cái)?shù)據(jù)內(nèi)容的描述,因而,對(duì)于數(shù)據(jù)的檢索非常有意義,我們不會(huì)再象HTML那樣,檢索出與我們要求無關(guān)的信息。
另一方面,XML文件是數(shù)據(jù)的載體,利用XML作為數(shù)據(jù)庫,不需要訪問任何數(shù)據(jù)庫系統(tǒng),我們可以使用任意WEB技術(shù)來顯示我們的數(shù)據(jù),比如HTML,F(xiàn)lashMX 等。
由于世界各大計(jì)算機(jī)公司的積極參與,XML正日益成為基于互聯(lián)網(wǎng)的數(shù)據(jù)格式新一代的標(biāo)準(zhǔn)。
下面利用XML作為數(shù)據(jù)的載體,開發(fā)一個(gè)基于XML的留言板。
?
首先,我們建立XML文件guestbook.xml,該文件記錄了留言者的姓名、電子郵件、網(wǎng)址、留言內(nèi)容。當(dāng)然,我們也可以根據(jù)需要添加任意多的信息。文件內(nèi)容如下:
<留言本>
<留言記錄>
<留言者姓名>KAI留言者姓名>
<電子郵件>kai@hostx.org電子郵件>
<網(wǎng)址>http://www.17xml.com 網(wǎng)址>
<留言內(nèi)容>千山萬水總是情,常來泡妞行不行?咔咔:_)留言內(nèi)容>
留言記錄>
留言本>
由于目前許多服務(wù)器都支持ASP,我們采用常見的ASP來作為實(shí)現(xiàn)的工具,guestbook.asp文件如下:
<mailto:%@Language="VBScript">
<%
'設(shè)置Web頁面的信息
Response.Buffer = true
Response.Expires = -1
'顯示留言函數(shù)init()
'www.knowsky.com
Function init()
entryForm()
'定義局部變量
Dim objXML
Dim arrNames
Dim arrEmails
Dim arrURLS
Dim arrMessages
'創(chuàng)建XMLDOM文檔對(duì)象,用來存放留言
Set objXML = server.createObject("Msxml2.DOMDocument")
objXML.async = false
objXML.load(server.MapPath("guestbook.xml"))
'取得留言本各元素的集合
Set arrNames = objXML.getElementsByTagName("留言者姓名")
Set arrEmails = objXML.getElementsByTagName("電子郵件")
Set arrURLS = objXML.getElementsByTagName("網(wǎng)址")
Set arrMessages = objXML.getElementsByTagName("留言內(nèi)容")
Response.Write "
" Response.Write "各位的留言如下:" Response.Write " | |
" & arrNames.item(x).text & " | |
網(wǎng)址:" & arrURLS.item(x).text & " | |
留言內(nèi)容: | |
" & arrMessages.item(x).text &" | |
XML 留言本 例子
"