Menampilkan Data XML ke Dalam Tabel HTML dengan SimpleXML PHP

Menampilkan Data XML ke Dalam Tabel HTML dengan SimpleXML PHP

Tutorial Information

ProgramPHP
Version5.3
DifficultyStandar
Estimated Time15 Menit

Dalam dunia internet, seringkali kita menjumpai format dokumen XML. Lalu apa itu XML? Seperti layaknya HTML (Hypertext Markup Language), XML (eXtended Markup Language) adalah…

Dalam dunia internet, seringkali kita menjumpai format dokumen XML. Lalu apa itu XML? Seperti layaknya HTML (Hypertext Markup Language), XML (eXtended Markup Language) adalah sebuah bahasa markup (http://en.wikipedia.org/wiki/XML). Markup dapat diartikan sebagai script yang berisikan kode berupa tanda atau tag-tag yang telah ditentukan untuk memformat suatu dokumen teks, agar dapat dibaca oleh berbagai aplikasi.

Suatu dokumen XML biasanya terdiri dari beberapa bagian atau elemen. Untuk mengenali suatu dokumen XML dalam suatu script biasanya diawali dengan header yang menunjukkan versi XML yang digunakan. Perhatikan script dokumen XML berikut:

<?xml version="1.0"?>
<books>
<buku isbn="978-1594489501">
<judul>Bumi Manusia</judul>
<pengarang>Pramoedya Ananta Toer</pengarang>
<penerbit>Lentera Dipantara</penerbit>
<harga>90000</harga>
</buku>
<buku isbn="979-1594329501">
<judul>Anak Semua Bangsa</judul>
<pengarang>Pramoedya Ananta Toer</pengarang>
<penerbit>Lentera Dipantara</penerbit>
<harga>94000</harga>
</buku>
<buku isbn="980-1594489213">
<judul>Jejak Langkah</judul>
<pengarang>Pramoedya Ananta Toer</pengarang>
<penerbit>Lentera Dipantara</penerbit>
<harga>98000</harga>
</buku>
<buku isbn="985-1518789501">
<judul>Rumah Kaca</judul>
<pengarang>Pramoedya Ananta Toer</pengarang>
<penerbit>Lentera Dipantara</penerbit>
<harga>84000</harga>
</buku>
</books>

Dalam script di atas, terdapat baris header<?xml version=”1.0″?> yang menunjukkan bahwa dokumen tersebut merupakan dokumen XML versi 1.0. Baru kemudian diikuti dengan elemen-elemen XML di baris berikutnya. Di dalam tag <books> dan <buku>terdiri daribeberapa elemen lain. Tag <buku> mempunyai sebuah atribut (misal: isbn=”978-1594489501″). Sedangkan di dalam tag <judul>, <pengarang>, <penerbit>, dan <harga>berisi teks/data. Isi atribut dan teks inilah yang nantinya ditampilkan ke dalam berbagai jenis antarmuka.

Apabila data XML di atas disimpan ke dalam sebuah file buku.xml kemudian dibuka melalui browser, maka hasil yang akan diperoleh adalah sebagai berikut:

data_xml

Tampilan Data XML

Kemudian muncul pertanyaan, bagaimana cara menampilkan data XML tersebut ke dalam bentuk HTML? Pada artikel kali ini penulis akan menjelaskan cara menampilkan data XML tersebut ke dalam tabel HTML. Metode yang digunakan yaitu SimpleXML dengan script PHP. Selain metode SimpleXML, juga dapat menggunakan metode DOM XML. Untuk diketahui, penampilan dokumen XML ke dalam bentuk HTML juga dikenal dengan istilah parsing.

Langkah yang harus dilakukan yaitu dengan membuat sebuah script PHP yang dapat memparsing dokumen XML tersebut ke dalam bentuk HTML.

<!DOCTYPE html>
<html>
<head>
<title>Daftar Buku</title>
<!--Bagian CSS untuk Styling Tabel-->
<style type="text/css">
          table, th, td
          {
               border: 1px solid black;
          }
</style>
</head>
<body>

<h3>Daftar Buku Terbaru</h3>
<?php
// untuk meload data xml (buku.xml) dengan cara SimpleXML 
$books = new SimpleXMLElement('buku.xml', null, true);

// menampilkan data ke XML ke dalam tabel HTML
echo "
<table>
<tr>
<th>Judul</th>
<th>Pengarang</th>
<th>Penerbit</th>
<th>Harga</th>
<th>ISBN</th>
</tr>

";

// melakukan looping penampilan data buku
foreach($books as $buku) 
{
        echo "
<tr>
<td width='200'>{$buku->judul}</td>
<td width='200'>{$buku->pengarang}</td>
<td width='130'>{$buku->penerbit}</td>
<td width='80'>\${$buku->harga}</td>
<td width='130'>{$buku['isbn']}</td>
</tr>

";
}
echo '</table>';
?>

</body>
</html>

Kemudian simpan script PHP di atas ke dalam file buku.php. Pada dasarnya, baris kode yang menjadi perhatian dari keseluruhan kode di atas yaitu :

$books = new SimpleXMLElement('buku.xml', null, true);

Baris kode PHP tersebut berfungsi untuk membuat objek SimpleXML dari dokumen file buku.xml. Hasil pembuatan objek tersebut kemudian ditampilkan per elemen buku. Coba buka file buku.php tersebut melalui sebuah browser di komputer atau laptop Anda, hasil yang akan diperoleh yaitu sebagai berikut:

data html

Tampilan Data html

Penutup

XML merupakan salah satu bentuk pemformatan dokumen yang sudah mendukung web service. Dengan kata lain, dokumen XML sangat berguna untuk representasi data yang handal untuk berbagai macam platform aplikasi web yang berbeda. Selain itu, format data XML sudah tercantum dalam standar rekomendasi World Wide Web Consortium/ W3C.

Tag: , , ,

12 Comments

Leave Comment
  1. ers says:

    Thanks berat bro…

  2. Amy says:

    waaahh……tutor yang bagus nich……goodluck kk
    oh iya kalo diaplikasikan ke playlist.xml di sites google gimana caranya?
    mohon bantuannya…….

  3. nyai says:

    Dear,
    Bagaimana untuk mengatur penampilannya, misalkan mempergunakan scrollbar. tq

  4. hendro says:

    thanks banget bro …

  5. farry gunaawan says:

    mas kalo sudah di tampilkan ke tabel, terus datanya saya mau rubah gimana mas? jadi xml saya bisa saya edit dari tabel tersebut. terima kasih

  6. Pas nyari referensi ttg XML, akhirnya nyantol disini gan..
    Thanks atas pencerahannya.

  7. ozoewii lim says:

    suwon sanget mas bro~~ sangat membantu nih tutornya….:)

  8. kalo xml-nya awalnya ada gininya gimana ya cara pasringnnya?

    ………
    ……..
    …….

    tak coba pake cara diatas malah muncul gini

    Warning: SimpleXMLElement::__construct(): I/O warning : failed to load external entity ” <tracks next-href=" bla bla bla..

  9. loh kok malah ilang? :bingung

    ulangin deh:

    kalo xml-nya awalnya ada gininya gimana ya cara pasringnnya?

    ………
    ……..
    …….

    tak coba pake cara diatas malah muncul gini

    Warning: SimpleXMLElement::__construct(): I/O warning : failed to load external entity ” <tracks next-href=" bla bla bla..

    tak kasih bintang biar gak ilang .

  10. yanwar says:

    mas help me. saya generate XML dari database menggunakan PHP pas di tampilkan online malah bug semua. saya sudah memberikan header(“Content-Type: text/xml; charset=ISO-8859-1″); itu gimana yah. ?? solusi nya

  11. candra says:

    broo, kalo pake SOAPclient gmna caranya? thanks

Write Comment

Your email will not be published. The marked label is required.