Membuat Laporan PDF di PHP dengan HTML2PDF

Publish Date : 14-04-2016 , dibaca 53159 kali, Hari ini dibaca : 1 kali ,0 comments

Ok.. admin akan Share Membuat Report / Laporan PDF di PHP dengan HTML2PDF, artikel ini admin admin dari mbak anggun,, yang admin rasa cukup bermanfaat.. kalo seblumnya admin sudah pernah posting artikel Cara Print Halaman Web dengan Javascript  cukup simple, kali ini saya akan memberikan contoh kodingan membuat report atau laporan dalam format pdf di PHP dengan menggunakan library HTML2PDF dan menggunakan database MySQL.

Convert HTML ke PDF ini banyak sekali caranya, baik dengan menggunakan library MPDF5, FPDF, maupun HTML2PDF.

Membuat Report PDF di PHP dengan HTML2PDF

Sebelum mulai koding, download dulu library  HTML2PDF disini..
Setelah di download, seperti biasa kita harus create database dan tablenya.
Contoh databasenya mahasiswa dengan tabel siswa.

membuat laporan dengan Html2pdf

Membuat Tabel di database :

CREATE TABLE SISWA (  
NIS VARCHAR(10) NOT NULL PRIMARY KEY,  
NAMA VARCHAR(30) NOT NULL,  
ALAMAT VARCHAR(255) NOT NULL,  
TGL_LAHIR DATE NOT NULL,  
TELP VARCHAR(30) NOT NULL,  
ANGKATAN VARCHAR(2) NOT NULL  

INSERT Tabel di database :

INSERT INTO siswa (NIS, Nama, Alamat, TGL_LAHIR , Telp, Angkatan ) 
            values ('0912912','ALETA GAOS', 'JAKARTA', '1991-03-01','0341 567890','2009');
INSERT INTO siswa (NIS, Nama, Alamat, TGL_LAHIR , Telp, Angkatan )
            values ('12345','ANGGUN PATRIANA', 'JAKARTA', '07-04-1990','021886968','2008');
INSERT INTO siswa (NIS, Nama, Alamat, TGL_LAHIR , Telp, Angkatan )
            values ('13456','FERI ALGIFARI GAOS', 'CIAMIS', '19-02-1989','081256985','2007');
)

Membuat Koneksi di Mysql dengan PHP :

<?php
//============================================
//@author : suckittrees.com
//============================================
//setting koneksi php dan mysql anda
$root = "root"; //username db anda
$pass = ""; //password database anda
$db  = "mahasiswa"; //nama database anda
$host = "localhost";

if($connect = mysql_connect($host,$root,$pass)==true){
 $sel = mysql_select_db($db);
}
else{
 echo "Koneksi database Gagal !!";
}
?>

Membuat file Siswa.php

<?php
include_once("config.php");

//buat query untuk menampilkan berita
$query = mysql_query("SELECT * FROM SISWA ORDER BY NAMA");

?>
<style>
 table{
  border:silver 1px solid;
 }
 table td{
  border-bottom:silver 1px solid;
  border-right:silver 1px solid;
  padding:0 0 0 5px;
 }
</style>
<table cellpadding="0" cellspacing="0" style="font-family:Verdana, Geneva, sans-serif">
  <!--DWLayoutTable-->
  <tr>
    <td height="25" colspan="7" align="center"><strong>DAFTAR MAHASISWA</strong></td>
  </tr>
  <tr>
    <td height="25" align="center" style="background-color:#CCC"><strong>NO</strong></td>
    <td width="100" align="center" style="background-color:#CCC"><strong>NIS</strong></td>
    <td width="250" align="center" style="background-color:#CCC"><strong>NAMA</strong></td>
    <td width="150" align="center" style="background-color:#CCC"><strong>ALAMAT</strong></td>
    <td width="150" align="center" style="background-color:#CCC"><strong>TGL LAHIR</strong></td>
    <td width="150" align="center" style="background-color:#CCC"><strong>TELEPON</strong></td>
     <td width="100" align="center" style="background-color:#CCC"><strong>ANGKATAN</strong></td>
  </tr>
<?php
$nomor = 1;
while($data = mysql_fetch_array($query)){
$kode = $data['NIS']; // ambil nis siswa (unik)
?>
  <tr>
    <td width="38" height="25" valign="middle"><?php echo $nomor; ?></td>
    <td valign="middle"><?php echo $data['NIS']; ?></td>
    <td valign="middle"><?php echo $data['NAMA']; ?></td>
    <td valign="middle"><?php echo $data['ALAMAT']; ?></td>
    <td valign="middle"><?php echo $data['TGL_LAHIR']; ?></td>
    <td valign="middle"><?php echo $data['TELP']; ?></td>
    <td valign="middle"><?php echo $data['ANGKATAN']; ?></td>
    <td valign="middle">
 <!-- BUAT LINK POP UP KE HALAMAN PDF KONVERTER SEPERTI PADA CONTOH BERIKUT -->
 <a href="javascript:void(0);"
    onclick="window.open('report.php?kode=<?php echo $kode; ?>','nama_window_pop_up','size=800,height=800,scrollbars=yes,resizeable=no')">PDF</a>
 </td>
   </tr>
<?php
$nomor++;
}
?>
</table>

Setelah membuat file siswa.php, selanjutnya kita buat halaman report PDFnya, simpan dengan file report.php

Membuat report.php untuk menampilkan laporan 

<?php
session_start();
ob_start();
include_once("config.php"); //buat koneksi ke database
$kode   = $_GET['kode']; //kode berita yang akan dikonvert
$query  = mysql_query("SELECT * FROM SISWA WHERE NIS='".$kode."'");
$data   = mysql_fetch_array($query);

?>
<html xmlns="http://www.w3.org/1999/xhtml"> <!-- Bagian halaman HTML yang akan konvert -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title><?php echo $data['NIS']; ?></title>
</head>
<body>
<?php
echo "<h1>".$data['NIS']."</h1>";
echo '<table border="0">
  <tr>
    <td width="100">NAMA</td>
    <td width="10">:</td>
    <td width="250">'.$data['NAMA'].'</td>
  </tr>
  <tr>
    <td>TGL LAHIR</td>
    <td>:</td>
    <td>'.$data['TGL_LAHIR'].'</td>
  </tr>
  <tr>
    <td>ALAMAT</td>
    <td>:</td>
    <td>'.$data['ALAMAT'].'</td>
  </tr>
   <tr>
    <td>TELEPON</td>
    <td>:</td>
    <td>'.$data['TELP'].'</td>
  </tr>
  <tr>
    <td>ANGKATAN</td>
    <td>:</td>
    <td>'.$data['ANGKATAN'].'</td>
  </tr>
</table>';

echo "<p>data yang tertera di atas adalah mahasiswa universitas ini.</p>";
echo "<p align='right'>JAKARTA, ".date('d-m-Y')."
<img src='ttd.png' width='120'>
( Anggun Patriana )</p>";
?>
</body>
</html><!-- Akhir halaman HTML yang akan di konvert -->
<?php
$filename="mhs-".$kode.".pdf"; //ubah untuk menentukan nama file pdf yang dihasilkan nantinya
//==========================================================================================================
//Copy dan paste langsung script dibawah ini,untuk mengetahui lebih jelas tentang fungsinya silahkan baca-baca tutorial tentang HTML2PDF
//==========================================================================================================
$content = ob_get_clean();
$content = '<page style="font-family: freeserif">'.nl2br($content).'</page>';
 require_once(dirname(__FILE__).'/html2pdf/html2pdf.class.php');
 try
 {
  $html2pdf = new HTML2PDF('P','A4','en', false, 'ISO-8859-15',array(30, 0, 20, 0));
  $html2pdf->setDefaultFont('Arial');
  $html2pdf->writeHTML($content, isset($_GET['vuehtml']));
  $html2pdf->Output($filename);
 }
 catch(HTML2PDF_exception $e) { echo $e; }
?>

OK.. Semoga Bermanfaat artikel Membuat Laporan PDF di PHP dengan HTML2PDF

Produk Rekomendasi

Artikel Terkait

Diskusi



wa