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 Regol Bandung

YOENITA SPA – www.yoenitaspa.com   layanan pijat panggilan daerah  Regol  bandung atau  Pijat Spa di tempat kami langsung di Jl Purwakarta 42 Antapani Bandung, hubungi Tel. Whatsapp 0822.86000.667 , Pijat Terapi di Tempat atau dipanggil ke hotel Apartemen Reflexy Body Massage di sekitar daerah antapani dan menerima pijat panggilan rumah hotel apartemen sekitar    Regol  Bandung , dengan layanan pijat sehat refleksi, body massage, totok wajah serum, pijat tradisional, kombinasi pijat tradisional dengan harga Mulai Rp 50Rb sangat terjangkau buat anda melepas lelah selepas aktifitas pekerjaan Anda di kantor , dirumah atau di perkuliahan. Pijat Yoenita dilayani terapis muda Pria dan Wanita dan untuk semua kalangan umur dengan terapis yang professional dan bersertifikasi dan bukan merupakan layanan pijat plus plus di bandung atau bukan juga pijat yang menyediakan terapi vitalitas buat pria untuk kebugaran, Etika massage kami sangat tegas melarang aktifitas pijat plus kepada sem...

Privat kursus komputer di Antapani Bandung – 0812.8733.1966 - PRIKOM

PRIKOM Bandung Tel/WA 0812.8733.1966 Privat Kursus komputer Exclusive excel, word , powerpoint , internet ms project , php laravel , corel , photoshop , qgis di daerah sekitar  Antapani Bandung dengan biaya terjangkau untuk semua kalangan pelajar,mahasiswa, pekerja, pebisnis, ibu rumah tangga (hubungi PRIKOM Bandung) . PRIVAT KOMPUTER - PRIKOM WA 0812.8733.1976, Privat Kursus Komputer daerah sekitar  Antapani Bandung , memberikan layanan privat komputer di tempat kami di pusat kota bandung yang strategis dan biaya yang terjangkau untuk semua kalangan pelajar, mahasiswa, pekerja, wiraswasta  di sekitar Antapani , tersedia paket 3x pertemuan di daerah Antapani bandung , privat komputer 4x pertemuan, dengan materi yang sangat disesuaikan dengan kebutuhan, PRIKOM menggunakan metode privat exclusive 1 guru 1 murid dengan pengajar dari kalangan praktisi dan akademisi. Sertifikat juga tersedia setelah kegiatan kursus privat kursus excel dan komputer diberikan secara ringan d...