Selasa, 20 Maret 2012

Script Export MySQL ke Excel Menggunakan PHP

Bagi kalian yang ingin meng-export data dari database MySQL ke dalam format Excel, ini script-nya, tinggal copy paste saja dan simpan dalam format file .php.

Dapatkan records dari tabel yang akan di export
<?
$result=mysql_query("select * from peserta order by nama asc");

function xlsBOF() {
echo pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0);
return;
}
function xlsEOF() {
echo pack("ss", 0x0A, 0x00);
return;
}
function xlsWriteNumber($Row, $Col, $Value) {
echo pack("sssss", 0x203, 14, $Row, $Col, 0x0);
echo pack("d", $Value);
return;
}
function xlsWriteLabel($Row, $Col, $Value ) {
$L = strlen($Value);
echo pack("ssssss", 0x204, 8 + $L, $Row, $Col, 0x0, $L);
echo $Value;
return;
}
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");;
header("Content-Disposition: attachment;filename=hasilexport.xls ");
header("Content-Transfer-Encoding: binary ");

xlsBOF();
Buatlah judul tabelnya dimulai dari kolom 0 dan baris 0.
xlsWriteLabel(0,0,"NAMA PESERTA SEMINAR ANTAR BANGSA PENDIDIKAN ICT");
Buatlah nama kolom tersebut yang dimulai dari baris ke 3:
xlsWriteLabel(2,0,"No.");
xlsWriteLabel(2,1,"Nama");
xlsWriteLabel(2,2,"Jns Kelamin");
xlsWriteLabel(2,3,"Instansi");
xlsWriteLabel(2,4,"Pekerjaan");
xlsWriteLabel(2,5,"Alamat");
xlsWriteLabel(2,6,"Biaya");

$xlsRow = 3;
Selanjutnya letakkan data tersebut sesuai dengan kolom yang sudah kita buat tadi
while($row=mysql_fetch_array($result)){
   
xlsWriteNumber($xlsRow,0,$row['id']);
xlsWriteLabel($xlsRow,1,$row['nama']);
xlsWriteLabel($xlsRow,2,$row['kelamin']);
xlsWriteLabel($xlsRow,3,$row['instansi']);
xlsWriteLabel($xlsRow,4,$row['pekerjaan']);
xlsWriteLabel($xlsRow,5,$row['alamat']);
xlsWriteLabel($xlsRow,6,$row['biaya']);
$xlsRow++;
}
xlsEOF();
exit();
?>
Simpanlah file di atas dengan nama export.php. Untuk mengaksesnya tinggal buat link aja ke file export.php maka langsung terbentuk tabel excel nya.


Catatan : sesuaikan script di atas dengan tabel yang ingin anda export ke dalam format excel.
Special thanks to nuzulifitriadi.com

3 komentar:

  1. PERTAMAX,PREMIUM,SOLAR diamankan

    BalasHapus
  2. Apakah script diatas dapat digunakan untuk Excel 2007 atau versi yg lebih tinggi?

    BalasHapus