服務器上的 XML
- 上一頁 XML Schema
- 下一頁 XML 實例
XML 文件是類似 HTML 文件的純文本文件。
能夠通過標準的 web 服務器輕松地存儲和生成 XML。
在服務器上存儲 XML 文件
XML 文件在 Internet 服務器上進行存儲的方式與 HTML 文件完全相同。
請打開 Windows 記事本,并輸入以下代碼:
<?xml version="1.0" encoding="UTF-8"?> <note> <from>John</from> <to>George</to> <message>Remember me this weekend</message> </note>
然后用適當的文件名,比如 "note.xml",在 web 服務器上保存這個文件。
通過 PHP 生成 XML
可以在服務器上生成 XML,而且無需安裝任何 XML 軟件。
如需使用 PHP 在服務器上生成 XML 響應,請使用下面的代碼:
<?php header("Content-type: text/xml"); echo "<?xml version='1.0' encoding='UTF-8'?>"; echo "<note>"; echo "<from>John</from>"; echo "<to>George</to>"; echo "<message>Remember me this weekend</message>"; echo "</note>"; ?>
請注意,響應頭部的內容類型必須設置為 "text/xml"。
查看這個 PHP 文件是如何從服務器返回的。
如果您希望學習 PHP,請閱讀我們的 PHP 教程。
通過 ASP 生成 XML
XML 可在不安裝任何 XML 軟件的情況下在服務器端生成。
如需從服務器生成 XML 響應 - 只需簡單地編寫以下代碼并在服務器上把它保存為一個 ASP 文件:
<% response.ContentType="text/xml" response.Write("<?xml version='1.0' encoding='UTF-8'?>") response.Write("<note>") response.Write("<from>John</from>") response.Write("<to>George</to>") response.Write("<message>Remember me this weekend</message>") response.Write("</note>") %>
請注意,此響應的內容類型必須設置為 "text/xml"。
查看這個 ASP 文件如何是從服務器返回的
如果您希望學習 ASP,您可以閱讀我們的 ASP 教程。
從數據庫生成 XML
XML 可以從數據庫生成,無需安裝任何 XML 軟件。
如需從服務器生成 XML 數據庫響應,只需簡單地編寫以下代碼,并把它在服務器上保存為 ASP 文件:
<% response.ContentType = "text/xml" set conn=Server.CreateObject("ADODB.Connection") conn.provider="Microsoft.Jet.OLEDB.4.0;" conn.open server.mappath("/datafolder/database.mdb") sql="select fname,lname from tblGuestBook" set rs=Conn.Execute(sql) response.write("<?xml version='1.0' encoding='UTF-8'?>") response.write("<guestbook>") while (not rs.EOF) response.write("<guest>") response.write("<fname>" & rs("fname") & "</fname>") response.write("<lname>" & rs("lname") & "</lname>") response.write("</guest>") rs.MoveNext() wend rs.close() conn.close() response.write("</guestbook>") %>
查看以上 ASP 代碼的實際數據庫輸出
上面的例子使用了帶有 ADO 的 ASP。
如果您需要學習 ADO,請訪問我們的《ADO 教程》。
在服務器上使用 XSLT 來轉換 XML
下面的 ASP 代碼在服務器上把 XML 文件轉換為 HTML:
<% ' 加載 XML set xml = Server.CreateObject("Microsoft.XMLDOM") xml.async = false xml.load(Server.MapPath("simple.xml")) ' 加載 XSL set xsl = Server.CreateObject("Microsoft.XMLDOM") xsl.async = false xsl.load(Server.MapPath("simple.xsl")) ' 轉換文件 Response.Write(xml.transformNode(xsl)) %>
例子解釋
- 第一個代碼塊創建微軟 XML 解析器的實例 (XMLDOM),并把 XML 文件載入內存
- 第二個代碼塊創建解析器的另一個實例,并把 XSL 文件載入內存
- 最后一行代碼使用 XSL 文檔轉換 XML 文檔,并將結果作為 HTML 發送到瀏覽器。完工!
看看上面的代碼如何運行
通過 ASP 把 XML 保存為文件
這個 ASP 實例會創建一個簡單的 XML 文檔,并把該文檔保存到服務器上:
<% text="<note>" text=text & "<to>George</to>" text=text & "<from>John</from>" text=text & "<heading>Reminder</heading>" text=text & "<body>Don't forget the meeting!</body>" text=text & "</note>" set xmlDoc=Server.CreateObject("Microsoft.XMLDOM") xmlDoc.async="false" xmlDoc.loadXML(text) xmlDoc.Save("test.xml") %>
- 上一頁 XML Schema
- 下一頁 XML 實例