• ebook php Web Design
  • Web Design Service
  • Partner Ilmuwebsite

  • Recomended Link

  • Ilmuwebsite Twitter

  • Ilmuwebsite Fans

  • Konversi File Excel ke MySql

    Posted on: January 25th, 2010 by IW

    IW
    Memberikan pembelajaran kepada Anda seputar Web Development, Desain Grafis, dll, secara gratis. Contact: Homepage : http://www.ilmuwebsite.com Facebook : http://www.facebook.com/ilmuwebsite Twitter : https://twitter.com/#!/ilmuwebsite Email: admin@ilmuwebsite.com Ads:

    manfaat propolis

    Konversi File Excel ke MySql web desain grafisTerkadang konversi laporan harian dari excel ke dalam bentuk lain menjadi begitu penting, terlebih lagi jika sang bos menginginkan laporan harian yang penuh dengan baris dan kolom tersebut dijadikan ke dalam bentuk database, yang kemudian nantinya akan diolah lebih lanjut untuk dijadikan system informasinya. Nah pertanyaan sekarang adalah, bagaimana merubah file excel ke dalam bentuk database mysql? Ya, penulis akan jelaskan tutorial php tersebut di sini selengkapnya, sedetil-detilnya dengan cara seksama dan dalam tempo yang sesingkat-singkatnya. :D

    Telah diketahui bersama, Microsoft Excel versi 2003 ke atas sudah mendukung adanya format universal, yakni XML. Dan telah diyakini jika XML merupakan format file yang akan berlaku di masa depan nanti. Dalam arti format inilah yang nantinya akan digunakan sebagai standarisasi untuk semua tipe file aplikasi yang ada, entah itu word, excel, powerpoint, ataupun aplikasi-aplikasi lain yang tentunya di dalam aplikasi yang berkaitan telah di sediakan fasilitas xml-nya. Nah untuk Microsoft excel versi 2003 ke atas sudah disediakan fasilitas untuk menyimpan spreadsheet termasuk macronya, kedalam bentuk xml.

    Nah apa yang harus dilakukan selanjutnya adalah, menggunakan script php sederhana yang dapat memparsing xml yang dihasilkan dari file excel tersebut kedalam bentuk database dengan memanfaatkan fasilitas XML Dom ( document object model ) yang ada pada library PHP. Dengan kata lain fasilitas XML dari kedua belah pihak, yakni microsoft excel dan php5 digunakan sebagai jembatan yang dimanfaatkan oleh script ini untuk melakukan konversi file ecxel ke dalam database mySQL.

    Source Codenya

    Simpan script php di bawah ini dengan nama excel2sql.php, kemudian letakkan pada direktori dimana program php itu berada, penulis menyimpannya di dalam c:program filesxamppphp.

    <?php
    $tables = array();
    $indata = 0;

    function encode( $text )

    {
    $text = preg_replace( “/’/”, “””, $text );
    return “‘”.$text.”‘”;
    }

    function start_element( $parser, $name, $attribs )
    {
    global $tables, $indata;
    if ( $name == “WORKSHEET” )
    {
    $tables []= array(
    ‘name’ => $attribs['SS:NAME'],
    ‘data’ => array()
    );
    }
    if ( $name == “ROW” )
    {
    $tables[count($tables)-1]['data'] []= array();
    }
    if ( $name == “DATA” )
    {
    $indata = 1;
    }
    }
    function text( $parser, $text )
    {
    global $tables, $indata;
    if ( $indata )
    {

    $data =& $tables[count($tables)-1]['data'];
    $data[count($data)-1] []= $text;
    }
    }
    function end_element( $parser, $name )
    {
    global $indata;
    if ( $name == “DATA” )
    $indata = 0;
    }
    $parser = xml_parser_create( );
    xml_set_element_handler( $parser, “start_element”, “end_element” );
    xml_set_character_data_handler( $parser, “text” );
    while( !feof( STDIN ) ) {
    $text = fgets( STDIN );
    xml_parse( $parser, $text );
    }
    xml_parser_free( $parser );
    foreach( $tables as $table )
    {
    $name = $table['name'];
    $data =& $table['data'];

    @$cols = implode( “,”, $data[0] );
    $cols = strtolower(str_replace(” “,”_”,$cols));

    for( $in = 1; $in < count( $data ); $in++ )
    {
    $sqldata = implode( “, “, array_map( “encode”, $data[$in] ) );
    ?>
    INSERT INTO <?php echo( str_replace(” “,”_”,strtolower($name) ))?> ( <?php echo( $cols ) ?> ) VALUES ( <?php echo( $sqldata ); ?> );
    <?php
    }
    }
    ?>

    Cara Penggunaannya

    Langkah awal yang harus di lakukan adalah membuat satu dokumen excel baru, atau jika anda akan menggunakan dokumen yang sudah ada, buat bentuk sederhana dari dokumen tersebut, kira-kira bentuknya, dengan awal mulanya seperti ini :

    Konversi File Excel ke MySql web desain grafis

    Di gambar tersebut terlihat saya telah menghapus sheet yang tidak akan digunakan nantinya. Ini dilakukan sebagai upaya penghematan resource saja. Tips dari penulis : jangan jadi seorang yang pemboros. :D

    Ya, langkah selanjutnya save as dokumen tersebut, ke dalam bentuk XML Spreadsheet (*.xml, di sini penulis meletakkannya di direktori c:Another :

    Konversi File Excel ke MySql web desain grafis

    Dokumen yang baru di save ke dalam type file xml tersebut apabila dibuka dengan editor notepad, bentuk standarnya akan terlihat seperti ini :

    <?xml version=”1.0″?>
    <?mso-application progid=”Excel.Sheet”?>
    <Workbook xmlns=”urn: schemas-microsoft-com:office: spreadsheet”
    xmlns: o=”urn: schemas-microsoft-com:office:office”
    xmlns: x=”urn: schemas-microsoft-com:office:excel”
    xmlns: ss=”urn: schemas-microsoft-com:office: spreadsheet”
    xmlns: html=”http://www.w3.org/TR/REC-html40″>
    <DocumentProperties xmlns=”urn: schemas-microsoft-com:office:office”>
    <Author>Al-k</Author>
    <LastAuthor>Al-k</LastAuthor>
    </DocumentProperties>
    <ExcelWorkbook xmlns=”urn: schemas-microsoft-com:office:excel”>
    <WindowHeight>9720</WindowHeight>
    <WindowWidth>15195</WindowWidth>
    <WindowTopX>480</WindowTopX>
    <WindowTopY>45</WindowTopY>
    <ProtectStructure>False</ProtectStructure>
    <ProtectWindows>False</ProtectWindows>
    </ExcelWorkbook>

    <Worksheet ss: Name=”DATA COSTUMER”>
    <Table ss: ExpandedColumnCount=”5″ ss: ExpandedRowCount=”9″ x:FullColumns=”1″
    x:FullRows=”1″>
    <Column ss: AutoFitWidth=”0″ ss: Width=”18.75″/>
    <Column ss: AutoFitWidth=”0″ ss: Width=”105″/>
    <Column ss: AutoFitWidth=”0″ ss: Width=”111″/>
    <Column ss: AutoFitWidth=”0″ ss: Width=”147.75″/>
    <Column ss: StyleID=”s70″ ss: AutoFitWidth=”0″/>
    <Row ss: Height=”13.5″>
    <Cell ss: StyleID=”s91″><Data ss: Type=”String”>id</Data></Cell>
    <Cell ss: StyleID=”s92″><Data ss: Type=”String”>Nama Customer</Data></Cell>
    <Cell ss: StyleID=”s92″><Data ss: Type=”String”>Alamat Rumah</Data></Cell>
    <Cell ss: StyleID=”s93″><Data ss: Type=”String”>Email</Data></Cell>
    <Cell ss: StyleID=”s68″/>
    </Row>
    <Row>
    <Cell ss: StyleID=”s83″><Data ss: Type=”Number”>1</Data></Cell>
    <Cell ss: StyleID=”s84″><Data ss: Type=”String”>Yudho P</Data></Cell>
    <Cell ss: StyleID=”s84″><Data ss: Type=”String”>Bandung</Data></Cell>
    <Cell ss: StyleID=”s85″><Data ss: Type=”String”>antoniush@plasa.com</Data></Cell>
    </Row>

    Ya, kira-kira struktur filenya akan seperti itu, namun ada beberapa bagian yang sengaja penulis dihilangkan. Langkah berikutnya adalah menjalankan script phpnya dengan menggunakan command line :

    Start menu | run | cmd

    ( ket: penulis menggunakan xampp pada tutorial ini, tidak berbeda dengan web server paketan yang lainnya )

    Masuk ke dalam direktori dimana php.exe berada,
    C:>cd c:program filesxamppphp

    Kemudian jalankan scriptnya,
    C:Program Filesxamppphp>php.exe excel2sql.php < c:anotherdata1.xml

    Konversi File Excel ke MySql web desain grafis

    Anda pun dapat menyisipkan hasil sqlnya kedalam satu file :
    C:Program Filesxamppphp>php.exe excel2sql.php < c:anotherdata1.xml > databasecostumer.sql

    Berikut adalah screenshoot hasil dari eksekusi perintah tersebut :

    Konversi File Excel ke MySql web desain grafis

    Silahkan download script nya di sini excel2sql.php.zip

    Greetz: Staff Ilmuwebsite

    Konversi File Excel ke MySql web desain grafisCara Membuat Website dengan Adobe Dreamweaver

    Ingin tau lebih jelas, lebih cerdas, tentang cara pembuatan website? Store Ilmuwebsite menyediakan CD Tutorial Interaktif dengan harga murah, mengantar Anda menjadi seorang web designer yang handal


    Konversi File Excel ke MySql web desain grafisMahir PHP MySQL Membuat Aplikasi Dinamis Berbasis Web

    Ingin tau lebih jelas, lebih cerdas, tentang cara pembuatan website dinamis atau aplikasi berbasis web? Kami punya solusi yang sangat sangat murah! Lebih ampuh dari hanya sekedar membaca buku, interaktif layaknya kursus PHP biasa

    No related posts.

    5 Responses

    1. hendra says:

      hebat…..

    2. neza says:

      toritorial yang mas hendra maksud sulit untuk saya mengerti, kalau boleh saya minta cara efektif membuat website sendiri yang dapat diedit kapan saja dan untuk promosi jualan..

    3. gun says:

      Bisa di coba tuch? mksh kak

    4. septian says:

      excelnya gak bisa diubah ke format xml.

    5. septian says:

      ralat gan.
      ternyata bisa. :malu
      :cendol