Ini adalah lanjutan dari postingan sebelumnya tentang bagaimana membuat laporan atau report dengan menggunakan class FPDF PHP jika anda belum membacanya silahkan lihat disini. Pada postingan tersebut saya sudah membahas bagaimana membuat sebuah laporan dari semua data yang diambil dari tabel database dan rasanya kurang lengkap jika saya belum membahas bagaimana membuat laporan pertanggal dengan class FPDF ini. stay tune ok. :)sebelum membuat laporan pertanggal berdasarkan data yang ada di tabel database pastikan dalam field tabel tersebut ada sebuah field dengan type Date/Tanggal suatu misal tanggal register atau tanggal transaksi seperti contoh tabel saya berikut ini.
Selanjutnya sebelum mengeksekusi tombol cetak akan ada penyeleksian data yang dicetak dari tanggal berapa sampai tanggal berapa. Untuk lebih memudahkan sebaiknya memanfaatkan Penggunaan Date time Picker seperti postingan saya
disini. Sehingga tampilannya akan menjadi seperti berikut
Kemudian anda tinggal menambahkan aksi formnya menuju file Cetak Laporan anda. Berikut adalah contoh script cetak laporan pertanggal yang saya gunakan.
03 | include "koneksi.php" ; |
05 | class PDF extends FPDF{ |
07 | // Load data = Pecah Array |
08 | function LoadData($gue){ |
11 | foreach($gue as $coba) |
12 | $data[] = explode( '|' ,$coba); |
17 | // Fungsi Membuat Tabel |
18 | function FancyTable($header, $data){ |
19 | // Colors, line width and bold font |
20 | $this->SetFillColor(255,0,0); |
21 | $this->SetTextColor(255); |
22 | $this->SetDrawColor(128,0,0); |
23 | $this->SetLineWidth(.3); |
24 | $this->SetFont( '' , 'B' ); |
25 | // Lebar Header Sesuaikan Jumlahnya dengan Jumlah Field Tabel Database |
26 | $w = array(10, 30, 35, 40, 25, 40); |
27 | for ($i=0;$i< count ($header);$i++) |
28 | $this->Cell($w[$i],7,$header[$i],1,0, 'C' , true ); |
30 | // Color and font restoration |
31 | $this->SetFillColor(224,235,255); |
32 | $this->SetTextColor(0); |
36 | foreach($data as $row){ |
37 | // Field Dari Database Yang Ingin ditampilkan |
38 | // $this->Cell($w[Ubah Ini],6,$row[Ubah Ini], 'LR' ,0, 'L' ,$fill); |
39 | $this->Cell($w[0],6,$row[0], 'LR' ,0, 'L' ,$fill); |
40 | $this->Cell($w[1],6,$row[1], 'LR' ,0, 'L' ,$fill); |
41 | $this->Cell($w[2],6,$row[2], 'LR' ,0, 'L' ,$fill); |
42 | $this->Cell($w[3],6,$row[3], 'LR' ,0, 'L' ,$fill); |
43 | $this->Cell($w[4],6,$row[4], 'LR' ,0, 'L' ,$fill); |
44 | $this->Cell($w[5],6,$row[5], 'LR' ,0, 'L' ,$fill); |
49 | $this->Cell(array_sum($w),0, '' , 'T' ); |
54 | // Pendefinisian Header Tabel |
55 | $header = array( 'ID' , 'Tanggal' , 'Nama' , 'Jenis Kelamin' , 'Agama' , 'Alamat' ); |
56 | // Load Data dari Database Memilih Data Berdasarkan Tanggal yang diinput |
57 | $dataku = mysql_query( "SELECT * FROM data WHERE (((tanggal) BETWEEN '" .$_POST['dari ']."' AND '".$_POST[' sampai ']."' ))"); |
58 | while ($tampil=mysql_fetch_array($dataku)){ |
59 | // Simpan Kedalam Array dengan Batasan | |
60 | @$gue[] .= $tampil[ 'id' ]. "|" .$tampil[ 'tanggal' ]. "|" .$tampil[ 'nama' ]. "|" .$tampil[ 'jenis_kelamin' ]. "|" .$tampil[ 'agama' ]. "|" .$tampil[ 'alamat' ]; |
64 | $data = $pdf->LoadData($gue); |
65 | $pdf->SetFont( 'Arial' , '' ,14); |
67 | $pdf->FancyTable($header,$data); |
ini listing cetaklaporan pertanggalnya ada gak?
BalasHapuskk listing cetak laporan perbulanya ada gak?
BalasHapus