PANDUAN MUDAH

Cara Mudah Membuat Laporan Format Excel dengan PHP
www.bunafit-komputer.com www.planetKode.Com
Koleksi Buku dari Penerbit GAVAMEDIA, Yogyakarta Penulis : Bunafit Nugroho, dan Indah Indriyanna

Harga: Rp. 57.500,-

Harga: Rp. 65.500,-

Harga: Rp. 36.500,-

Harga: Rp. 67.500,-

Harga: Rp. 66.500,-

Harga: Rp. 49.500,-

Harga: Rp. 49.500,-

Harga: Rp. 33.500,-

2 Artikel ini diterbitkan oleh Redaksi Bunafit Komputer, Yogyakarta

Format Laporan Bentuk Data Excel
Format lain dalam menampilkan laporan adalah ke dalam bentuk data Excel. Mungkin teknik ini sangat Anda perlukan saat data yang hendak dilaporkan berupa data-data akuntansi atau trax penjualan pada aplikasi penjualan dan pembelian. Dengan melaporkan data ke dalam format data Excel, maka pengguna dapat langsung mengelola data yang berhasil dilaporkan. Untuk membuatnya, Kami berikan dua teknik, berikut caranya:

Pada contoh program berikut, secara otomatis akan membentuk desain laporan dengan mengikuti banyaknya data yang hendak ditampilkan dari tabel. Data akan ditampilkan sesuai dengan kolom tabel yang diseleksi. Listing Program laporan_excel_1.php
<?php mysql_connect("localhost","bunafit","nugroho"); mysql_select_db("karyawandb"); $qry_data=mysql_query("SELECT * FROM pribadi ORDER BY nip"); // Mendapatkan jumlah kolom tabel $count = mysql_num_fields($qry_data); // Membuat header berupa kolom tabel for ($i = 0; $i < $count; $i++){ $header .= mysql_field_name($qry_data, $i)."\t"; } // Perintah otomatis menampilkan data while($row = mysql_fetch_row($qry_data)){ $baris = ''; foreach($row as $value){ if(!isset($value) || $value == ""){ $value = "\t"; } else{ $value = str_replace('"', '""', $value); $value = '"' . $value . '"' . "\t"; }

$baris .= $value; }

Membuat Laporan Format Excel dengan PHP

$data .= trim($baris)."\n"; } $data = str_replace("\r", "", $data); // Konfirmasi saat data yang dilaporkan kosong if ($data == "") { $data = "Tidak ada record dalam tabel"; } // Mendeklarasikan file hasil laporan header("Content-type: application/octet-stream"); header("Content-Disposition: attachment; filename=datapribadi.xls"); header("Pragma: no-cache"); header("Expires: 0"); // Menampilkan dengan cara memanggil data excel echo $header."\n".$data; ?>

Akhir Listing Apabila dijalankan, maka hasil dari kode program di atas akan tampak seperti gambar berikut:

Gambar Hasil laporan dalam format excel

Cara yang kedua, Kita dapat mendesain sendiri tampilan laporan dengan kode program. Kita dapat membuat header laporan maupun definisi kolom data pada cell tabel Excel. Untuk lebih jelasnya, berikut adalah contohnya:

4 Artikel ini diterbitkan oleh Redaksi Bunafit Komputer, Yogyakarta

Listing Program laporan_excel_2.php
<?php mysql_connect("localhost","bunafit","nugroho"); mysql_select_db("karyawandb"); $qry_data=mysql_query("SELECT * FROM pribadi ORDER BY nip"); // Fungsi saat data kosong function xlsBOF() { echo pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0); return; } // Fungsi saat data berakhir function xlsEOF() { echo pack("ss", 0x0A, 0x00); return; } // Fungsi membuat baris data function xlsBuatBaris($data, $Col, $Value) { echo pack("sssss", 0x203, 14, $data, $Col, 0x0); echo pack("d", $Value); return; } // Fungsi menuliskan data bentuk label function xlsBuatLabel($data, $Col, $Value ) { $L = strlen($Value); echo pack("ssssss", 0x204, 8 + $L, $data, $Col, 0x0, $L); echo $Value; return; } // Mendeklarasikan file hasil laporan 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=datapribadi.xls "); header("Content-Transfer-Encoding: binary "); xlsBOF();

Membuat Laporan Format Excel dengan PHP

// Membuat Header dan nama kolom tabel xlsBuatLabel(0,0,"DAFTAR DATA PRIBADI"); xlsBuatLabel(2,0,"NIP"); xlsBuatLabel(2,1,"NAMA"); xlsBuatLabel(2,2,"ALAMAT"); xlsBuatLabel(2,3,"KELAMIN"); xlsBuatLabel(2,4,"TGL LAHIR"); $xlsRow = 3; // Menampilkan data secara berulang while($data=mysql_fetch_array($qry_data)){ xlsBuatBaris($xlsRow,0,$data['nip']); xlsBuatLabel($xlsRow,1,$data['nama']); xlsBuatLabel($xlsRow,2,$data['alamat']); xlsBuatLabel($xlsRow,3,$data['kelamin']); xlsBuatLabel($xlsRow,4,$data['tgl_lahir']); $xlsRow++; } xlsEOF(); exit(); ?>

Akhir Listing Penjelasan Program : Dari semua listing program parser template di atas, Anda perlu mengetahui beberapa kode beserta fungsinya: Kode :
mysql_connect("localhost","bunafit","nugroho"); mysql_select_db("karyawandb"); $qry_data=mysql_query("SELECT * FROM pribadi ORDER BY nip");

Kode di atas digunakan untuk membuka koneksi dan query mengambil semua data dari tabel pribadi. Kode :
function xlsBOF() { echo pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0); return; } function xlsEOF() { echo pack("ss", 0x0A, 0x00);

6 Artikel ini diterbitkan oleh Redaksi Bunafit Komputer, Yogyakarta

return; }

Kode di atas digunakan untuk membuat fungsi saat data kosong (BOF) dan saat data berakhir (EOF). Kode :
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=datapribadi.xls "); header("Content-Transfer-Encoding: binary ");

Kode di atas digunakan untuk membuat file baru hasil laporan dengan jenis excel. File hasil laporan didefinisikan dengan nama datapribadi.xls. Dari program di atas, apabila dijalankan Anda akan mendapatkan hasil desain dan data laporan sebagai berikut:

Gambar Hasil laporan pada Excel oooOooo

Membuat Laporan Format Excel dengan PHP

Sign up to vote on this title
UsefulNot useful

Master Your Semester with Scribd & The New York Times

Special offer: Get 4 months of Scribd and The New York Times for just $1.87 per week!

Master Your Semester with a Special Offer from Scribd & The New York Times