Studi Kasus : Mengambil data dari XML dan menyimpannya ke dalam database (mysql)
Kebutuhan : Webserver Packages, already installed.

OKAY, no need for trivial chit-chat. Let’s just practice :D

Step 1 : Persiapkan Database

  1. Buat database dengan nama db_tutorial
  2. Siapkan tabel dengan nama tb_dataxml, dengan struktur tabel seperti gambar dibawah ini.
  3. Done!

Step 2 : Persiapkan Folder Kerja

  1. Buat folder dengan nama tutorphp dalam document root anda
  2. Simpan semua file dalam tutorial ini dalam folder tersebut.

Step 3 : Membuat script koneksi ke DB

  1. Ketikkan script berikut,
    <?php
    $host = "localhost";
    $user = "root"; //adjust according to your mysql setting
    $pass = ""; //adjust according to your mysql setting
    $dbName = "db_tutorial";
    mysql_connect($host, $user, $pass);
    mysql_select_db($dbName)
    or die ("Connect Failed !! : ".mysql_error());
    ?>
    
  2. simpan dengan nama connect.php

Step 4 : Menyiapkan data XML

  1. Ketikkan script berikut,
    <?xml version="1.0" encoding="iso-8859-1"?>
    <data>
      <record>
        <title>Time to Go</title>
        <author>June Sushan</author>
        <publisher>Gramedia Inc</publisher>
        <date>
          <month>June</month>
          <year>1989</year>
        </date>
        </record>
    
    	<record>
        <title>Time to Come</title>
        <author>Alan Smart</author>
        <publisher>Elexmedia Inc</publisher>
        <date>
          <month>April</month>
          <year>1989</year>
        </date>
        </record>
    
    </data>
    
    
  2. simpan dengan nama record.xml

Step 5 : Membuat script untuk me-load XML, menyimpan ke database, dan menampilkan XML

  1. Ketikkan script berikut,
    <?php
    include 'connect.php';
        if( !$xml = simplexml_load_file('record.xml') ) //using simplexml_load_file function to load xml file
        {
            echo 'load XML failed ! ';
        }
        else
        {
            echo '<h1>This is the Data</h1>';
    		foreach( $xml as $record ) //parse the xml file into object
            {
    			$title = $record->title; //get the childnode title
    			$author = $record->author; //get the child node author
    			$publisher = $record->publisher; //get the child node publisher
    			$month = $record->date->month; //get the child node month
    			$year = $record->date->year;	 //get the child node year
    
                echo 'Title : '.$title.'<br />';
                echo 'Author : '.$author.'<br />';
    			echo 'Publisher : '.$publisher.'<br />';
    			echo 'Month : '.$month.'<br />';
    			echo 'Year : '.$year.'<br />';
    			echo '<br>';
    
    //save to database
    			$q = "INSERT INTO tb_dataxml VALUES('','$title','$author','$publisher','$month $year')";
    			$result = mysql_query($q);
            }
    			if ($result) {
    			echo '<h2>Success Save to Database </h2>';
    			}
    			else echo '<h2>Failed Save to Databaase</h2>';
        }
    ?> 
  2. simpan dengan nama loadxml.php

Step 6 : Testing Code

  1. Pergi ke http://localhost/tutorphp/loadxml.php. Anda akan melihat data dari record.xml telah diparsing dan ditampilkan seperti gambar dibawah :D
  2. Cek database anda, pastikan bahwa data dari XML telah tersimpan dalam tabel yang telah anda siapkan pada step 1

So, this is time to trivial chit-chat Ha Ha :D XML adalah extensible Markup Language.
Why XML? XML adalah format data standar (yang telah disepakati) yang digunakan dalam pertukaran data. Karena ke-global-an XML itulah, XML sering digunakan dalam komunikasi data karena formatnya yang platform independent :D
Hal yang juga menarik:

Hak Cipta

Semua skrip dan teknik dalam artikel di itx.web.id boleh digunakan sebagaimana kehendakmu tanpa perlu mencantumkan sumber. Kamu tidak boleh mengkopi seluruh artikel, dalam Bahasa Indonesia ataupun diterjemahkan ke dalam bahasa lain.

Pencarian ke sini:


Related Articles:

Artikel terkait:

: PHP

About the author

obviously, a girl. with sweet smile, off course. turning her 21 years trapped on Informatics departement and just started to having some crush with it lately. she uses wordpress. she loves php. she lo

Comments are closed.