Anda di halaman 1dari 7

XML & AJAX

Teguh S
Apa itu XML?
• XML singkatan dari eXtensible Markup Language
• merupakan bahasa markup seperti HTML
• XML didesain untuk menyampaikan data, dan
tidak untuk tujuan menampilkan data
• Tag XML tidak bersifat predefined. Pengembang
harus mendefinisikan tag-tag nya sendiri
• XML didesain untuk
menjelaskan/mendeskripsikan dokumen yg
dikandungnya
• XML merupakan rekomendasi dari W3C
XML vs HTML
• XML tidak menggantikan HTML
• XML dan HTML didesain dgn tujuan berbeda:
- XML didesain untuk mengirimkan dan
menyimpan data, dan berfokus pada "Data apa
itu?"
- HTML didesain untuk menampilkan data, dgn
berfokus pada "bagaimana data ditampilkan?"
• HTML adalah tentang cara menampilkan
informasi, sedangkan XML adalah tentang cara
menyampaikan informasi
XML dan Data
• XML tidak melakukan sebuah aksi apapun, namun hanya
menciptakan sebuah tatanan struktur untuk memetakan
data
• Berikut struktur dan data sederhana xml

<?xml version=“1.0”?>
<mhs>
<nim>09.5.00001</nim>
<nama>Panjul Oke</nama>
<alamat>
<jalan>Jl Samanhudi 84-86</jalan>
<kota>Solo</kota>
<kodepos>57142</kodepos>
</alamat>
</mhs>
Struktur XML
Dokumen XML memiliki struktur yg terdiri dari
• Root element, dalam dokumen xml hanya ada satu pasang root elemen
(misal: test, dr contoh di atas)
• Di dalam root element dapat terdiri dari beberapa child-element (misal:
element mhs)
• Data element dapat didefinisikan sebagai atribut dari element, contoh
<?xml version=“1.0”?>
<mhs>
<nim>09.5.00001</nim>
<nama>Panjul Oke</nama>
<alamat jalan=“Jl Samanhudi 84-86” kota=“Solo”
kodepos=“57142” />
</mhs>
• Dalam child element dapat memiliki beberapa sub-child element
• Element yg memiliki tingkatan sederajat disetiap levelnya disebut sibling-
element
Men-generate XML dgn PHP
<?php
$cn = mysql_connect("localhost", "root", "");
mysql_select_db("test", $cn);
$sql = "SELECT nim, nama, prodi FROM mhs";
$hasil = mysql_query($sql, $cn);
header("Content-Type: text/xml");
echo "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n\n";
echo "<test>\n";
while ($baris = mysql_fetch_row($hasil)){
echo "<mhs>\n";
echo "<nim>".$baris[0]."</nim>\n";
echo "<nama>".$baris[1]."</nama>\n";
echo "<prodi>".$baris[2]."</prodi>\n";
echo "</mhs>\n";
}
echo "</test>\n";
?>
Parsing XML dg AJAX
• Membaca dokumen digunakan metode:
xmlhttp.responseXML
• Sedangkan untuk membaca element dalam dokumen
xml dapat digunakan metode:
getElementsByTagName(nama-elemen)
• Contoh :
var docXML = xmlhttp.responseXML;
//mhs ke-1
nim1 = docXML.getElementsByTagName("nim")[0].firstChild.data;
nama1= docXML.getElementsByTagName("nama")[0].firstChild.data;
//mhs ke-2
nim2 = docXML.getElementsByTagName("nim")[1].firstChild.data;
nama2= docXML.getElementsByTagName("nama")[1].firstChild.data;

Anda mungkin juga menyukai