hari ini saya mau kasih tips & trik bagaimana cara mengkonversi data - data yang ada di database mysql ke aplikasi microsoft excel.
awal mula adalah salah satu client saya yang meminta saya agar Data - data pada websitenya bisa di export ke miscrosoft excel, awal - awal saya juga bingung gmana cara export ke excel, saya coba utak atik di PHPMaker karna di program itu ada konversi ke excel tetapi saya malah tambah bingung, coba cari - cari lagi dan akhirnya dapet Script simpel dari Xampp Versi 1.6.2. saya coba buka tetep aja masih bingung cara membacanya. untuk script pada Xampp bisa temen - temen liat di bawah ini :
## Script getexcel From Xampp ##
include_once "Spreadsheet/Excel/Writer.php";
$xls =& new Spreadsheet_Excel_Writer();
$xls->send("test.xls");
$format =& $xls->addFormat();
$format->setBold();
$format->setColor("blue");
$sheet =& $xls->addWorksheet('Test XLS');
$sheet->write(0, 0, 1, 0);
$sheet->write(0, 1, 2, 0);
$sheet->writeString(1, 0, "XAMPP:", 0);
$sheet->writeString(1, 1, $_POST['value'], $format);
$xls->close();
exit;
?>
yg hasilnya seperti ini :
saya coba bongkar dan pahami script di atas dan hasilnya adalah seperti script dan Gambar di Bawah ini :
## buat database, tabel dan record ##
Nama Database : ferdian
Nama Tabel : depan_news
CREATE TABLE `depan_news` (
`no` int(11) NOT NULL auto_increment,
`judul` varchar(100) collate latin1_general_ci default NULL,
`keterangan` text collate latin1_general_ci,
`tgl` varchar(15) collate latin1_general_ci default '0',
`wkt` varchar(15) collate latin1_general_ci default '0',
PRIMARY KEY (`no`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=4 ;
dan selanjutnya isikan beberapa data ke dalam tabel Tersebut .dan di bawah ini script Exportnya
## GETEXCEL.PHP ##
include_once "Spreadsheet/Excel/Writer.php";
// ini script koneksi ke database //
$koneksi=mysql_connect("localhost","root","");
mysql_select_db("ferdian",$koneksi);
// sampai disini script koneksi database //
$xls =& new Spreadsheet_Excel_Writer();
$xls->send("namafile.xls");
$format =& $xls->addFormat();
$format->setBold();
$format->setColor("blue");
$sheet =& $xls->addWorksheet('Nama Sheet');
// ini script yang akan di tampilkan pada baris 1 //
$sheet->writeString(1, 0, "Judul", $format);
$sheet->writeString(1, 1, "Keterangan",$format );
$sheet->writeString(1, 2, "Tanggal",$format );
$sheet->writeString(1, 3, "Waktu",$format );
// sampai disini script pada baris pertama
// ini script untuk memanggil tabel pada database //
$query=mysql_query("SELECT * FROM depan_news");
$i=2;
while($record=mysql_fetch_array($query)){
// ini script untuk menampilkan data pada tabel di database //
$sheet->writeString($i, 0, $record['judul'], 0);
$sheet->writeString($i, 1, $record['keterangan'], 0);
$sheet->writeString($i, 2, $record['tgl'], 0);
$sheet->writeString($i, 3, $record['wkt'], 0);
// simpai disini script menampilkan data pada tabel
$i=$i+1;
}
$xls->close();
exit;
?>
Hasil :
sedikit penjelasan tentang baris dan kolom pada excel :
contoh : $sheet->writeString(1, 0, "Tanggal",0 );
contoh script di atas menerangkan bahwa 1,0 berarti baris ke 2 dan kolom 1 ( hitungannya adalah mulai dari 0,1,2,3 dst. ), jadi jika kita ingin meletakkan data atau text pada baris ke 4 dan kolom ke 4 Scriptnya seperti ini $sheet->writeString(3, 4, "Tanggal",0 );
jika ingin meletakkan pada baris ke 1 dan kolom ke 1 secriptnya seperti ini $sheet->writeString(0, 0, "Tanggal",0 );
OK, selamat mencoba dan semoga Sukses
11 Komentar
mahmur
Fathan Bashori
nova
ajim
FR-SYSTEM.WEB.ID
huik
FR-SYSTEM.WEB.ID
joni
FR-SYSTEM.WEB.ID
adi
pututik