Membuat laporan format excel dengan php

Untuk membuat laporan format excel pertama kita buat dulu databasenya

kemudian buat program seperti berikut:
<?php
$namafile ="report.xls";

//fungsi penanda awal file(begin of file)excel
function xlsBOF(){
echo pack("ssssss",0x809,0x8,0x0,0x10,0x0,0x0);
return;
}

//fungsi penanda akhir file (end of file) excel
function xlsEOF(){
echo pack("ss",0xA,0x00);
return;
}

//fungsi untu menulis data (angka) ke cell excel
/*
function xlsWriteNumber($Row,$Col,$value){
  echo pack("ssss",0x203,14,$Row,$Col,0x0);
  echo pack("d",$value);
  return;
  }*/
  //fungsi untuk menulis data (text) ke cell excel
function xlsWriteLabel($Row,$Col,$value){
$L =strlen($value);
echo pack("ssssss", 0x204, 8 + $L, $Row, $Col,0x0,$L);
echo $value;
return;
}

//header file excel
header("Pragma: public");
header("Expires:0");
header("Cache-Control:must-revalidate,post-check=0, pre-check=0");
header("Content-Type:aplication/force-download");
header("Content-Type:aplication/octet-stream");
header("Content-Type:aplication/download");

//header untuk nama file
header("Content-Disposition:attacment; filename=".$namafile."");
header("Content-Transfer-Encoding: binary");

//memanggil fungsi penanda awal file
xlsBOF();
//---- membuat kolom penanda awal file excel ---//
//mengisi pada A1(baris 0 kolom 0)
xlsWriteLabel(0,0,"NO");
//mengisis cel A2 (baris ke 0 kolom ke 1
xlsWriteLabel(0,1,"Nama");
xlsWriteLabel(0,2,"alamat");
xlsWriteLabel(0,3,"kota");
//mengisi pada b1(baris 0 kolom 0)
include "koneksi.php";
$oke=mysql_query("select * from alamat");
$nobariscell =1;// nilai awal baris cell
while($data =mysql_fetch_array($oke)){
xlsWriteLabel($nobariscell,0,$data['no']);
xlsWriteLabel($nobariscell,1,$data['nama']);
xlsWriteLabel($nobariscell,2,$data['alamat']);
xlsWriteLabel($nobariscell,3,$data['kota']);
$nobariscell++;
}
xlsEOF();
exit;
?>

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 komentar:

Posting Komentar