Untuk membuat data XML tersedia untuk semua jenis browser, kita dapat mengubah dokumen XML pada SERVER dan mengirimkannya kembali ke browser sebagai XHTML.
Solusi Cross Browser
Dalam bab sebelumnya kita menjelaskan bagaimana XSLT dapat digunakan untuk mengubah dokumen dari XML ke XHTML dalam browser. Kami menggunakan JavaScript dan XML parser untuk transformasi. Namun, ini tidak akan bekerja pada browser yang tidak memiliki parser XML.Untuk membuat data XML tersedia untuk semua jenis browser, kita dapat mengubah dokumen XML pada server dan mengirim kembali ke browser sebagai XHTML.
Itulah keindahan lain dari XSLT. Salah satu tujuan desain untuk XSLT adalah untuk memungkinkan untuk mengubah data dari satu format yang lain pada server, kembali data dibaca untuk semua jenis browser.
XML file dan XSLT Berkas
Lihatlah dokumen XML yang telah Anda lihat dalam bab-bab sebelumnya:
<?xml version="1.0" encoding="UTF-8"?>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
.
.
</catalog>
Dan yang menyertai gaya XSL sheet:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th style="text-align:left">Title</th>
<th style="text-align:left">Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title" /></td>
<td><xsl:value-of select="artist" /></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Notice that the XML file does not have a reference to the XSL file.
IMPORTANT: Kalimat di atas menunjukkan bahwa file XML bisa diubah menggunakan banyak style sheet XSL yang berbeda.
PHP Code: Transform XML ke XHTML pada Server
Berikut ini adalah source code PHP yang diperlukan untuk mengubah file XML ke XHTML pada server:
<?php
// Load XML file
$xml = new DOMDocument;
$xml->load('cdcatalog.xml');
// Load XSL file
$xsl = new DOMDocument;
$xsl->load('cdcatalog.xsl');
//
Configure the transformer
$proc = new XSLTProcessor;
// Attach the xsl
rules
$proc->importStyleSheet($xsl);
echo $proc->transformToXML($xml);
?>
Tip: Jika Anda tidak tahu bagaimana menulis PHP, silakan belajar kami PHP tutorial .
Melihat cara kerjanya dengan PHP .
Kode ASP: Transform XML ke XHTML pada Server
Berikut ini adalah source code ASP yang diperlukan untuk mengubah file XML ke XHTML pada server:
<%
'Load XML file
set xml = Server.CreateObject("Microsoft.XMLDOM")
xml.async = false
xml.load(Server.MapPath("cdcatalog.xml"))
'Load XSL file
set xsl = Server.CreateObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load(Server.MapPath("cdcatalog.xsl"))
'Transform file
Response.Write(xml.transformNode(xsl))
%>
Tip: Jika Anda tidak tahu bagaimana menulis ASP, silakan belajar kami tutorial ASP .
Melihat cara kerjanya dengan ASP .