Skip to main content

Load and Insert XML data into MySQL with PHP simplexml function

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,







    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?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,







    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <?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,







    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    <?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
SISINDOTEK - I.T Training & Solution Provider
Jl. Sukasenang VI - 6 B Cikutra Bandung
Jawa Barat 40124
Tel. 022-71242266, 0812.8733.1966
Email : info@sisindotek.com , YM. sisindotek
www.sisindotek.com , facebook.com/sisindotek , twitter.com/sisindotek

Comments

Popular posts from this blog

PIJAT PANGGILAN BALI

via IFTTT

Fwd: TIPS UJIAN CGEIT

TIPS UJIAN CGEIT Halo semuanya. Saya berharap teman-teman semua sehat dan bahagia selalu ya. Dengan rendah hati saya sampaikan bahwa mulai bulan ini saya mendapatkan gelar  CGEIT  (Certified in the Governance of Enterprise IT). Saya berkomitmen untuk selalu menuliskan tips lulus setiap ujian sertifikasi yang saya ikuti sebagai ungkapan kesyukuran dan juga untuk membantu setiap kandidat ujian sertifikasi di luar sana. Jadi, inilah tips lulus  ujian CGEIT   versi saya   :   (P.S.: beberapa di antaranya mirip dengan  tips untuk lulus ujian CISA  yang diposting sebelumnya karena saya yakin keduanya memerlukan persiapan yang serupa)   1. Kalibrasi Ulang Pola Pikir   Satu hal yang paling saya sadari dari materi CGEIT adalah sudut pandang dan cara berpikirnya sedikit berbeda dari yang saya miliki. Sementara sebagai praktisi terkadang saya harus berpikir praktis, ujian CGEIT mengharuskan kita untuk berpikir secara strategis dan ideal. Jadi sebelum memulai perjalanan belajar, saya mengkalibrasi...

JS0Group.dll catia v6r2009 download

Solved ! : Download and install Catia V6r2009. What is Catia 3D ? CATIA, powered by Dassault Systèmes' 3DEXPERIENCE platform, delivers: A Social design environment built on a single source of truth and accessed through powerful 3D dashboards that drive business intelligence, real-time concurrent design and collaboration across all stakeholders including mobile workers. >> How to get the software ? you can download from http://getintopc.com/softwares/3d-cad/catia-v6-free-download/ >> and then start to install the software by using this guidance : 1. http://cadhelpcenter.blogspot.co.id/2010/04/step-by-step-installation-process-of.html 2. https://www.youtube.com/watch?v=2w5ZP0J6QHI >> when you meet the step that warn you to copy js0group.dll into instalation folder : x:\Program Files\Dassault Systemes\B205\intel_a\code\bin , you can download JS0Group.dll from this link : http://www.4shared.com/file/mzQgIsFI/JS0GROUP.htm Hope can help you to start to lear...