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.
$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 str_replace(” “,”_”,strtolower($name) ))?> ( ) VALUES ( );
}
}
?>
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 :
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.
Ya, langkah selanjutnya save as dokumen tersebut, ke dalam bentuk XML Spreadsheet (*.xml, di sini penulis meletakkannya di direktori c:Another :
Dokumen yang baru di save ke dalam type file xml tersebut apabila dibuka dengan editor notepad, bentuk standarnya akan terlihat seperti ini :
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″>
…
0 komentar:
:h: :i: :j: :k: :l: :m: :n: :o: :p: :q: :r: :s: :t: :u: :v: :w: :x: :y: :z:
Posting Komentar