服务器上的 XML
XML 文件与 HTML 文件一样,都是纯文本文件。
XML 可以很容易地由标准 Web 服务器存储和生成。
在服务器上存储 XML 文件
XML 文件可以像 HTML 文件一样存储在 Internet 服务器上。
启动 Windows 记事本并写入以下行
<?xml version="1.0" encoding="UTF-8"?>
<note>
<from>Jani</from>
<to>Tove</to>
<message>本周末记得我</message>
</note>
将文件保存到您的 Web 服务器,并命名为“note.xml”之类的适当名称。
使用 PHP 生成 XML
可以在服务器上生成 XML,而无需安装任何 XML 软件。
要使用 PHP 从服务器生成 XML 响应,请使用以下代码
<?php
header("Content-type: text/xml");
echo "<?xml version='1.0' encoding='UTF-8'?>";
echo "<note>";
echo "<from>Jani</from>";
echo "<to>Tove</to>";
echo "<message>本周末记得我</message>";
echo "</note>";
?>
请注意,响应头的 Content-type 必须设置为 "text/xml"。
如果您想学习 PHP,请在我们的主页上找到我们的 PHP 教程。
使用 ASP 生成 XML
要从服务器生成 XML 响应 - 只需编写以下代码并将其作为 ASP 文件保存在 Web 服务器上
<%
response.ContentType="text/xml"
response.Write("<?xml version='1.0' encoding='UTF-8'?>")
response.Write("<note>")
response.Write("<from>Jani</from>")
response.Write("<to>Tove</to>")
response.Write("<message>本周末记得我</message>")
response.Write("</note>")
%>
请注意,响应的 Content-type 必须设置为 "text/xml"。
如果您想学习 ASP,请在我们的主页上找到我们的 ASP 教程。
从数据库生成 XML
可以在不安装任何 XML 软件的情况下从数据库生成 XML。
要从服务器生成 XML 数据库响应,只需编写以下代码并将其作为 ASP 文件保存在 Web 服务器上
<%
response.ContentType = "text/xml"
set conn=Server.CreateObject("ADODB.Connection")
conn.provider="Microsoft.Jet.OLEDB.4.0;"
conn.open server.mappath("/数据文件夹/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,请在我们的主页上找到相关教程。
在服务器上使用 XSLT 转换 XML
此 ASP 在服务器上将 XML 文件转换为 XHTML
<%
'加载 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))
%>
示例说明
- 第一段代码创建了一个 Microsoft XML 解析器(XMLDOM)实例,并将 XML 文件加载到内存中。
- 第二段代码创建了另一个解析器实例,并将 XSL 文件加载到内存中。
- 最后一行代码使用 XSL 文档转换 XML 文档,并将结果作为 XHTML 发送到您的浏览器。太棒了!