Membuat Laporan PDF dengan PHP

Tutorial mengenai pembuatan laporan PDF dengan PHP ini adalah bagian pertama dari tutorial pembuatan file PDF dengan PHP. Untuk tahap perkenalan pembuatan laporan PDF, kita hanya akan menggunakan PHP dan TCPDF.

Buat form sebagai tempat menampung inputan user, misalkan kita beri nama index.php

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="utf-8" />
    <title>Tutorial Pembuatan Laporan PDF dengan PHP</title>
    </head>
    <body>
    <h1>Isi data diri anda</h1>
     <form action="kepdf.php" method="POST">
        Nama : <input type="text" name="nama"><br>
        Email : <input type="text" name="email"><br>
        No. HP : <input type="text" name="nohp"><br>
        Website : <input type="text" name="website"><br>
        <input type="submit" value="Generate PDF">
     </form>
    </body>
    </html>

Tampilan dari index.php ketika dibuka di browser
input user tcpdf

form diatas akan diarahkan ke kepdf.php, buat file baru kepdf.php isi dengan script

<?php
require_once('tcpdf_include.php');
// create new PDF document
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
// today
$date = date('d/m/Y H:i a');
// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Tommy S');
$pdf->SetTitle('Demo PHP PDF');
$pdf->SetSubject('Demo Laporan PDF');
$pdf->SetKeywords('pdf, jaranguda, tutorial');
 
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE );
// set header and footer fonts
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
 
// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
 
// set margins
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
$pdf->setPrintFooter(false);
$pdf->setPrintHeader(false);
// set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
$pdf->SetFont('helvetica', 'B', 20);
$pdf->AddPage('P');
$pdf->Write(0, 'Demo PDF', '', 0, 'L', true, 0, false, false, 0);
$pdf->SetFont('helvetica', '', 8);
//print_r($_POST); 
 
 
$nama = $_POST['nama'];
$email = $_POST['email'];
$nohp = $_POST['nohp'];
$website = $_POST['website'];
 
$tbl = <<<EOD
<br>
<br>
<table border="1" cellpadding="5">
	<tr>
		<td>Nama</td>
		<td>$nama</td>
	</tr>
	<tr>
		<td>Email</td>
		<td>$email</td>
	</tr>
	<tr>
		<td>No. HP</td>
		<td>$nohp</td>
	</tr>
	<tr>
		<td>Website</td>
		<td>$website</td>
	</tr>			
</table>
<p font="#000" bgcolor="#fff">$date</p>
EOD;
 
$pdf->writeHTML($tbl, true, true, true, true, '');
$pdf->Output('demoaja.pdf', 'I');

Untuk mengubah layout halaman dari Portrait ke Landscape ubah bagian $pdf->AddPage('P'); ke $pdf->AddPage('L');
Contoh output script diatas
hasil demo pdf

Form diatas dan script untuk proses pembuatan PDFnya sudah selesai, tapi masih ada beberapa file yang kurang, download file lengkapnya dibawah ini, dan jalankan di komputer anda.

Download “tutorial-pdf-php.tar.gz” tutorial-pdf-php.tar.gz – Downloaded 1013 times – 187 KB

tommy

Adi bekasta encari e, ja pe la lit renggetna.

One thought on “Membuat Laporan PDF dengan PHP

  1. mas, klo ambil data nya dari database caranya gmna biar hasil outputnya sama seperti contoh yang di atas (saya pake ci 2 dan tcpdf)
    thanks

Leave a Reply

Your email address will not be published. Required fields are marked *