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

Trainer Primavera P6 Project Management or Methodology Management

Hery Purnama 081.223344.506 is a Freelance Inhouse Trainer for Primavera P6 Project Portfolio Management , 15 years experience as Project Management Concept , MS. Project , Primavera P6 freelance Trainer Inhouse trainer for location in Bandung, Jakarta, Bali, Yogya, Batam, Medan, Balikpapan, Samarinda, Makasar, Surabaya and other cities in indonesia For inquiry please Call/ SMS/ Whatsapp to 081.223344.506 , email : purnamainfo or visit http://freelance-it-trainer.blogspot.com , http://good.web.id

Tutorial and Syllabuss SEO and Internet Marketing

Silabus/ Syllabuss Training SEO Internet Marketing SEO and Internet Marketing       Deskripsi : Di era digital global saat ini dan persaingan pasar yang ketat antar perusahaan maka mendapatkan segmen pasar yang baru dan bersifat global untuk meningkatkan keuntungan merupakan tantangan tersendiri buat perusahaan. memiliki sebuah website yang menarik saja tidak cukup saat ini, kemampuan sebuah website perusahaan kini tidak lagi dipandang sebelah mata hanya sebagai pelengkap dan cost center untuk perusahaan, namun website dianggap sebagai salah satu ujung tombak pemasaran dari bisnis perusahaan dan menjadi salah satu profit center. Hal ini cukup dipahami karena perkembangan teknnologi informasi serta pengguna media online yang dianggap murah dan cepat sudah sedemikian meluasnya. Kemampuan SEO (Search Engine Optimization) dari sebuah website kini menjadi priori...

Wow !, #infoproperti withdrawal complete : syahrul, Rp 840000, 2017-02-21 [token:963]

Wow Luar biasa !, agen Syahrul Rahmat Hadi telah sukses menarik komisinya untuk ke sekian kalinya sebagai member dari Program Agen Milyuner www.propertilink.com sebesar Rp 840000 pada tanggal 2017-02-21 (YYYY-MM-DD) , Apakah Anda berikutnya ?, Ikuti jejak agen Syahrul Rahmat Hadi di www.propertilink.com, daftar sekarang dan posting iklan properti Anda sepuasnya tanpa batas serta raih pasif income yang sesungguhnya dan mengalir terus tak terbatas dengan bantuan mesin promo otomatis kami. (kami yang pertama memperkenalkan teknologi mesin promo otomatis di Indonesia !). Program Agen Milyuner ini Terbuka untuk siapapun Ingin beriklan properti gratis ?, tersedia juga di www.propertilink.com , ayo jadi yang terdepan , semangat langkah Anda menentukan masa depan Anda dan keluarga ! #agenmilyuner #iklanproperti #iklanpropertigratis #propertilink #agenproperti #jualsewaproperti [Message Server propertilink dot com security token:963], Automatic Engine