Export dari Database ke Excel

Lagi-lagi iseng main-main PHP :)

PHP

Kali ini mencoba export dari Database MySQL ke format MS Excel dengan perantara PHP. Di sini aku cuma memakai classes yang telah ada di XAMPP yaitu BIFFwriter dan tinggal mengkonfigurasi sesuai dengan keinginan.

salah satu contoh sederhananya adalah sebagai berikut :

<?php
include “../conf.php”;
include_once “../Spreadsheet/Excel/Writer.php”;

$ThSelect = Globals::getVar(”y”);
$namafile = “AgendaIS-”.$ThSelect.”.xls”;
$worksheet = $ThSelect;
$judul = “Agenda IS $ThSelect”;

function parseDate($date) {
$format =”j F Y”;
$dateString = date($format , strtotime($date));
return $dateString;
}

$xls =& new Spreadsheet_Excel_Writer();
$xls->send($namafile);
$formatganjil =& $xls->addFormat();
$formatgenap =& $xls->addFormat();
$formatJudul =& $xls->addFormat();
$formatKhusus =& $xls->addFormat();

$formatJudul->setFgColor(”grey”);
$formatJudul->setColor(”white”);
$formatJudul->setBold();
$formatJudul->setTop(”1″);
$formatJudul->setBottom(”1″);
$formatJudul->setLeft(”1″);
$formatJudul->setRight(”1″);

$formatKhusus->setBold();
$formatKhusus->setColor(”red”);
$formatKhusus->setTop(”1″);
$formatKhusus->setBottom(”1″);
$formatKhusus->setLeft(”1″);
$formatKhusus->setRight(”1″);

$formatganjil->setColor(”black”);
$formatganjil->setTop(”1″);
$formatganjil->setBottom(”1″);
$formatganjil->setLeft(”1″);
$formatganjil->setRight(”1″);

$formatgenap->setColor(”black”);
$formatgenap->setTop(”1″);
$formatgenap->setBottom(”1″);
$formatgenap->setLeft(”1″);
$formatgenap->setRight(”1″);
$formatgenap->setFgColor(”silver”);

$sheet =& $xls->addWorksheet($worksheet);

//baris, kolom, isi, format
$sheet->writeString(0, 0, $judul, 0);
$sheet->writeString(1, 0, “No”, $formatJudul);
$sheet->write(1, 1, “Agenda”, $formatJudul);
$sheet->write(1, 2, “Date”, $formatJudul);
$sheet->write(1, 3, “Place”, $formatJudul);

$sql = “select no,judul,tanggal,tempat from agenda where tanggal like ‘%$ThSelect%’ ORDER BY tanggal ASC”;
$recordSet = $adoObj->Execute($sql);
if($recordSet !=null){
$i=2;
while(!$recordSet->EOF){
if (($i % 2) == 0){
$format = $formatganjil;
}else{
$format = $formatgenap;
}
$sheet->write($i, 0, $i-1, $formatJudul);
$sheet->writeString($i, 1, $recordSet->fields['judul'], $format);
$sheet->writeString($i, 2, parseDate($recordSet->fields['tanggal']), $format);
$sheet->writeString($i, 3, $recordSet->fields['tempat'], $format);
$i++;

$recordSet->MoveNext();
}
}
$xls->close();
exit;
?>

Ternyata mudah banget… :D

Share and Enjoy at:
  • Facebook
  • Twitter
  • Technorati
  • MySpace
  • LinkedIn
February 4th, 2008 Posted in Info

One Response to “Export dari Database ke Excel”

  1. tita Says:

    mas, mo tanya bole ga?
    kl kebalikannya, maksutnya dari excel mo dimasukin ke mysql, sy sudah dapet source nya, tetapi tidak dapat memasukkan format tgl yang ada di excel. hasil dari tanggal selalu berubah menjadi text (misal 32012). mohon pencerahan mas
    thanks



Leave a Reply

:wink: :-| :-x :twisted: :) 8-O :( :roll: :-P :oops: :-o :mrgreen: :lol: :idea: :-D :evil: :cry: 8) :arrow: :-? :?: :!:

Andhy | Hosting by Qwords | Entries (RSS) and Comments (RSS).

Switch to our mobile site