Membuat Print Preview dengan PHP

Contoh print preview laporan data UMR tahun 2013

Laporan adalah suatu yang wajib dalam sebuah transaksi atau proses bisnis. Tidak jauh berbeda dengan aplikasi desktop, Aplikasi berbasis web juga membutuhkan laporan untuk di cetak atau di download dengan format lain seperti PDF atau XLS. Tiga artikel kedepan akan membahas tentang teknik membuat laporan berbasis web. Untuk teknik pertama adalah membuat laporan dengan format cetak. Biasanya teknik ini dipakai saat user ingin membuat laporan penjualan, laporan transaksi, laporan harian dan sebagainya.

Prasyarat
Dalam panduan ini, saya menggunakan CSS framework bernama Twitter Bootstrap dan XAMPP 1.7.4 di Windows XP. Twitter bootstrap sifatnya opsional karena dia hanya dipakai untuk memformat tampilan dan tabel data. Nama databasenya adalah upahdb dengan nama tabel umr2013. Berikut ini adalah tampilan dari Print preview.

Contoh print preview laporan data UMR tahun 2013

Soure code

Ini adalah potongan kode utama dari halaman laporan yang akan kia buat. Untuk penjelasan, lihat source codenya. Ingat, kalau mau belajar jangan asal comot, lihat penjelasan di source codenya


<html>
	<head>
	<!-- CSS bootstrap untuk menampilkan halaman secara cantik -->
	<link href="../assets/css/bootstrap.css" rel="stylesheet">
	<style type="text/css">	
	/* CSS untuk memformat halaman */	
	body {
			padding-top: 20px;
			padding-bottom: 40px;
			font-size: 0.7em;
	}
</style>
	</head>
	<body>
		<div class='span8  offset2'>
		<h2 style='text-align: center'> UMR 2013</h2>
		<hr>
		<table  class="table  table-condensed table-hover">
		<thead>
		<th><td><b>Propinsi </b></td><td class='pull-right'><b>Upah </b></td></th>
		</thead>
		<tbody>
		<?php
					
	require ('../inc/config.php');
	/* query SQL untuk mengambil data dari database */
$query="select * from umr2013";
$result=mysql_query($query) or die(mysql_error());
$no=1;
/*proses menampilkan data kedalam tabel 
 * perhatikan ada format_rupiah, fungsi ini agar data tampil dengan 
 * format rupiah, data aslinya hanya angka bisa, 
  lihat di file config.php  */
while($rows=mysql_fetch_object($result)){
?>
	<tr>
	</td><td><? echo $rows -> no;?></td>
	<td><?	echo $rows -> propinsi;?></td>			
	<td ><p class='pull-right'><? echo format_rupiah($rows -> upah);?></p></td>
	</tr>
<? }?>
	</tbody>
	</table>
	<p align='center'>
	<!-- kode untuk menampilkan tombol print dan saat di klik 
	 akan membuka printer dialog -->

<a href="umr2013_cetak.php" cls='btn' onClick="window.print();return false">
	 <i class='icon-print'></i>Cetak </a>
			</p>
		</div>
	</body>
</html>

Soure code

source code lengkap dan script SQL databasenya bisa anda download disini.

Author: Candra Adi Putra

Candra Adi Putra adalah Alumni STMIK AKAKOM Yogyakarta. Like Candralab Studio Di Facebook.

32 thoughts on “Membuat Print Preview dengan PHP”

  1. Salam kenal,
    Mas Candra, saya sangat berterima kasih menemukan web candra ini. Saya sdg mencari fasilitas cetak. ALhamdulillah terjawab di sini. Semoga mas Candra sehat dan sukses slalu! telah ikhlas berbagi ilmunya.izinkan saya sedot utk dipelajari.

    Oh, saya sedang membuat fasilitas cetak struk penjualan di kantor saya bekerja pakai kertas continuous form.. Tapi masih belum ketemu jurusnya. Mohon dibantu jika mas Candra punya coding/script cetak struk dengan PHP & MYSql. Jika ada boleh donk di-share di sini, atau kirim ke email saya: mus.koto@gmail.com.

    Terima kasih mas Canda.
    Mus Koto

  2. inikan pakai xampp ya?
    kalau pakai apache2triad gmn ya ?

    sempat coba metode lain, bisa proses di xampp tapi di apache2triad tidak bisa…

  3. Mas, saya sudah coba download filenya dan pada saat saya coba ada error. Parse error: syntax error, unexpected end of file in C:\xampp\htdocs\test\print\umr2013\umr2013_view.php on line 35

    kira-kira itu kesalahannya dimana yah mas,.
    makasi sebelomnya

  4. wah… ini yang saya cari… sangat membantu mas!
    sama mau tanya mas,
    (1) gimana buat laporan di php seting orientasi kertas landscape? soalnya kolom yang mau ditampilkan banyak.
    (2) gimana seting jika printer type kertas Rol?
    .
    mohon bantuannya!
    terima kasih.

  5. mas mo tanya donk
    itu gmn kalau mau nyetting tampilan hasil cetakannya
    misalnya di saya jadikan pdf biar tampilan hasil cetakannya ada kop suratnya misalkan

    makasih

  6. function LoadData($file)
    {
    // Read file lines
    $lines = file($file);
    $data = array();
    foreach($lines as $line)
    $data[] = explode(‘;’,trim($line));
    return $data;
    }

    file diatas dalam file umr2012_pdf.php , fungsinya untuk apa ya.. kalau tanpa fungsi itu apa yang terjadi, maaf masih newbie

  7. Mas, saya sudah coba download filenya dan pada saat saya coba ada error. Parse error: syntax error, unexpected end of file in C:\xampp\htdocs\test\print\umr2013\umr2013_view.php on line 53

    kira-kira itu kesalahannya dimana yah mas,.
    makasi sebelomnya

    1. sudah saya edit php.ini kira-kira seperti ini
      ; short_open_tag
      ; Default Value: On
      ; Development Value: On
      ; Production Value: On

      masih tidak bisa

    2. itu bukan itu bro, itu kan komentar, setiap yang ada titik koma diawal baris itu komentar, ya ga ngefek lah, liat bari s
      sektiar 220-230
      short_open_tag = On
      itu yang benar…
      baru restart xamppnya

  8. Ini baru mantap bank….
    Ngasih kode program sekaligus dengan penjelasannya…..
    Lanjut terus bang saya masih baru di php dan akan terus blajar php….
    Tolong di bahas juga (dengan source codenya) pencetakan tabel laporan langsung (directly) ke printer dengan garis-garis horizontal dan vertikal seperti layaknya garis-garis di excel…
    kalau bisa secepatnya bang………:) :)
    Penjelasannya sangat membantu, trims…

Tinggalin komentar dong!