-->

Membuat Laporan Format Excel Menggunakan PHP MySQL

Latar Belakang
Sebelumnya saya membuat artikel aplikasi-export-database-ke-excel-dengan-php. namun terdapat kekurangan yaitu tidak dapat menyisipkan gambar/logo dan tidak dapat membuat border table agar lebih rapih dan menarik.
Pada artikel kali ini saya menjelaskan tentang salah satu library yang banyak dipakai oleh orang dalam membuat report atau laporan dalam bentuk excel dari aplikasi PHP.
Cara Penggunaan 
  1. Download library phpexcel.codeplex.com
  2. Setelah di download kemudian di extract
  3. Disana terdapat folder Classes yang nanti akan di copy paste  ke aplikasi web dan digunakan untuk library pembuatan report
  4. Terdapat folder Documentation untuk detail fungsi dan cara penggunaan library
  5. Terdapat folder Examples berisi contoh script untuk menggunakan library PHPExcel
Download Demo
ri32-phpexcel
Untuk memudahkan teman-teman dalam memahami penggunaan library phpexcel, seperti biasa saya memberikan contoh database dan aplikasi yang dapat digunakan sebagai template pembuatan report menggunakan phpexcel.
Penentuan Kolom 
// mulai judul kolom dengan row 12
$objPHPExcel->getActiveSheet()->setCellValue(‘A12’, “NO”)
->setCellValue(‘B12’, “NAMA GURU”)
->setCellValue(‘C12’, “NIP”)
->setCellValue(‘D12’, “TELPON”)
->setCellValue(‘E12’, “TEMPAT/TGL LAHIR”)
->setCellValue(‘F12’, “AGAMA”)
->setCellValue(‘G12’, “JENIS KELAMIN”)
->setCellValue(‘H12’, “ALAMAT/TEMPAT TINGGAL”)
->setCellValue(‘I12’, “EMAIL”);
Penentuan Field
// menampilkan data, susunan field sesuai dengan urutan judul kolom
while($row = mysql_fetch_array($SQL, MYSQL_ASSOC)){
$no++;
$row_array[‘no’] = $no;
$row_array[‘nama’] = $row[‘nama’];
$row_array[‘nip’] = $row[‘nip’];
$row_array[‘telpon’] = $row[‘telpon’];
$row_array[‘tpttgllahir’] = $row[‘tempat_lahir’].”, “.$row[‘tanggal_lahir’];;
$row_array[‘agama’] = $row[‘agama’];
$row_array[‘kelamin’] = $row[‘kelamin’];
$row_array[‘alamat’] = $row[‘alamat’];
$row_array[’email’] = $row[’email’];
array_push($dataArray,$row_array);
}
Penentuan Lebar Kolom
//untuk auto size colomn
$objPHPExcel->getActiveSheet()->getColumnDimension(‘A’)->setWidth(5);
$objPHPExcel->getActiveSheet()->getColumnDimension(‘B’)->setAutoSize(true);
$objPHPExcel->getActiveSheet()->getColumnDimension(‘C’)->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension(‘D’)->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension(‘E’)->setAutoSize(true);
$objPHPExcel->getActiveSheet()->getColumnDimension(‘F’)->setWidth(10);
$objPHPExcel->getActiveSheet()->getColumnDimension(‘G’)->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension(‘H’)->setWidth(30);
$objPHPExcel->getActiveSheet()->getColumnDimension(‘I’)->setWidth(20);
REPORT THIS AD

Penentuan Logo
// Add a drawing to the worksheet
$objDrawing = new PHPExcel_Worksheet_Drawing();
$objDrawing->setName(‘Logo’);
$objDrawing->setDescription(‘Logo’);
$objDrawing->setPath(‘./images/logo.jpg’);
$objDrawing->setCoordinates(‘D2’);
$objDrawing->setHeight(100);
$objDrawing->setWidth(100);
$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
Penentuan Judul dan Sub Judul
// Mulai Merge cells Judul
$objPHPExcel->getActiveSheet()->mergeCells(‘D2:I2’);
$objPHPExcel->getActiveSheet()->setCellValue(‘D2’, “DAFTAR DATA GURU RI32 COMMUNITY”);
$objPHPExcel->getActiveSheet()->mergeCells(‘D3:I3’);
$objPHPExcel->getActiveSheet()->setCellValue(‘D3’, “Pemilihan Guru Teladan”);
$objPHPExcel->getActiveSheet()->mergeCells(‘D4:I4’);
$objPHPExcel->getActiveSheet()->setCellValue(‘D4’, “Tingkat SD-SMP-SMA”);
$objPHPExcel->getActiveSheet()->mergeCells(‘D5:I5’);
$objPHPExcel->getActiveSheet()->setCellValue(‘D5’, “Tahun 2013”);
$objPHPExcel->getActiveSheet()->getStyle(‘D2:I5’)->getFont()->setName(‘Arial’);
$objPHPExcel->getActiveSheet()->getStyle(‘D2:I5’)->getFont()->setSize(14);
$objPHPExcel->getActiveSheet()->getStyle(‘D2:I5’)->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle(‘D3:I5’)->getFont()->setSize(13);
// untuk sub judul
$objPHPExcel->getActiveSheet()->setCellValue(‘I7’, “Jumlah Data : $jumlah”);
$objPHPExcel->getActiveSheet()->setCellValue(‘A8’, “Kota : Karawang”);
$objPHPExcel->getActiveSheet()->setCellValue(‘A9’, “Propinsi : Jawa Barat”);
$objPHPExcel->getActiveSheet()->setCellValue(‘H8’, “Tingkat : SMA”);
$objPHPExcel->getActiveSheet()->setCellValue(‘H9’, “Sekolah : SMAN4 Karawang “);
$objPHPExcel->getActiveSheet()->getStyle(‘A7:I9’)->getFont()->setName(‘Arial’);
$objPHPExcel->getActiveSheet()->getStyle(‘A7:I9’)->getFont()->setSize(9);
Setting File Excel
// Redirect output to a client’s web browser (Excel2007)
header(‘Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet’);
header(‘Content-Disposition: attachment;filename=”DATA_GURU”‘.date(“d-F-Y”).'”.xlsx”‘);
header(‘Cache-Control: max-age=0’);
Download Sourcecode :

0 Posting Komentar untuk "Membuat Laporan Format Excel Menggunakan PHP MySQL"

1. Berkomentarlah dengan tata bahasa yang baik.
2. Silahkan tulis komentar Anda yang masih ada kaitanya dengan postingan.
3. Semua komentar kami baca, namun tidak semua bisa balas, harap maklum.
4. Beri tanda centang pada "Beri tahu saya", untuk pemberitahuan jika komentar telah kami balas.
5. Promosi produk/jasa tidak akan diterbitkan kecuali telah ada kerja sama.

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel