Membuat Laporan PDF dengan PHP - Mari Belajar Coding

31 Maret 2019

Membuat Laporan PDF dengan PHP


Membuat Laporan PDF dengan PHP

Selamat datang di blog Mari belajar koding. Tutorial kali ini kita akan belajar membuat laporan pdf menggunakan PHP. Pada sebuah sitem aplikasi, laporan merupakan hal penting untuk menampilkan data dari database berupa pdf, excel atau yang lainnya. Banyak library yang tersedia untuk membuat pdf dengan PHP seperti dompdf, fpdf, html2fpdf, mpdf, tcpdf dan sebagainya. Akan tetapi, pada tutorial kali ini kita akan belajar membuat laporan pdf menggunakan library mpdf. 

Apa itu mPDF? mPDF adalah library PHP yang menghasilkan file pdf dari HTML yang disandikan UTF-8 didasarkan pada fpdf dan html2fpdf dengan sejumlah perangkat tambahan, dengan menggunakan mpdf kita tidak perlu menyusun letak koordinat data yang akan di tampilkan dalam pdf. Sederhananya library mpdf mengubah tampilan web menjadi pdf.

Membuat Laporan PDF Dengan PHP

Unduh library mpdf menggunakan composer agar lebih mudah. Jika composer belum di instal, silahkan install terlebih dahulu. getcomposer.org. Cek  composer jika sudah terinstal dengan mengetikkan composer -v di CMD.
Membuat Laporan PDF dengan PHP

Baca juga: Cara Install dan Menggunakan Composer

Buat folder latihanpdf di dalam directory xampp/htodcs/. Kemudian buka CMD, pindahkan ke dalam directory C:\xampp\htdocs\latihanpdf>. Ketikkan kode berikut ini untuk instal library mpdf.
composer require mpdf/mpdf

Membuat Laporan PDF dengan PHP

Jika install mpdf berhasil maka akan terdapat file di dalam directory xampp/htdocs/latihanpdf. Kemudahan instal library menggunakan composer kita tidak perlu memanggil semua file dan class di dalam library mdpf. Cukup dengan memanggil file autoload.php yang berada pada folder vendor.
Membuat Laporan PDF dengan PHP

Bekerja dengan library mpdf. Salin kode dibawah ini kemudian simpan dengan nama latihan1.php di directory /htdocs/latihanpdf
<?php
require_once __DIR__ . '/vendor/autoload.php';

$mpdf = new \Mpdf\Mpdf();
$mpdf->WriteHTML('<h1>Hello world!</h1>');
$mpdf->Output();
?>

Keterangan:
require_once memanggil file autoad.php yang berada di dalam folder vendor.
Mpdf() memanggil class mpdf.
writeHTML untuk menulis dokumen html.

Tampilan file latihan1.php jika dijalankan di browser.
Membuat Laporan PDF dengan PHP

Bagaimana jika kita ingin membuat laporan pdf dari database mysql? Caranya mudah, siapkan databasenya terlebih dahulu. Kita ambil contoh menggunakan database akademik yang berisi tabel mahasiswa.
-- Buat database akademik
CREATE DATABASE `akademik`;
USE `akademik`;
-- buat tabel mahasiswa
CREATE TABLE `mahasiswa` (
`nim` varchar(15),
`nama` varchar(40),
`alamat` text,
`jurusan` varchar(255),
PRIMARY KEY (`nim`)
);

Membuat Laporan PDF dengan PHP

Insert data ke dalam tabel mahasiswa.
INSERT INTO `mahasiswa` (`nim`, `nama`, `alamat`, `jurusan`) VALUES
('1234', 'Agung Saputra', 'Semarang', 'Teknik Informatika'),
('1235', 'Dian Syaputra', 'Kendal', 'Teknik Informatika'),
('1236', 'Mirani Rahmawati', 'Pemalang', 'Sistem Informasi'),
('1237', 'Novita Sari', 'Pati', 'Manajemen Informatika');

Buat file php untuk menampilkan data dari database. salin kode dibawah ini kemudian simpan dengan nama latihan2.php
<?php
mysql_connect("localhost","root","");
mysql_select_db("akademik");

?>
<!DOCTYPE html>
<html>
<head>
 <title>Mari Belajar Coding</title>
</head>
<body>
 <div align="center">
  <h2 align="center">Data Mahasiswa</h2>
  <table align="center" width="60%" border="1">
   <thead>
    <tr>
     <th>NIM</th>
     <th>Nama</th>
     <th>Alamat</th>
     <th>Jurusan</th>
    </tr>
   </thead>
   <tbody>
    <?php
    $sql="select * from mahasiswa";
    $query=mysql_query($sql) or die(mysql_error());
    while ($dataMahasiswa=mysql_fetch_array($query)) {
    ?> 
    <tr>
     <td><?=$dataMahasiswa['nim']?></td>
     <td><?=$dataMahasiswa['nama']?></td>
     <td><?=$dataMahasiswa['alamat']?></td>
     <td><?=$dataMahasiswa['jurusan']?></td>
    </tr>
    <?php
    }
    ?>
   </tbody>
  </table>
 </div>
</body>
</html>

Tampilan jika dijalankan di browser
Membuat Laporan PDF dengan PHP

Untuk mengubah tampilan web menjadi pdf tambahkan kode dibawah mysql_select_db() :
require_once __DIR__ . '/vendor/autoload.php';
$mpdf = new \Mpdf\Mpdf();
ob_start(); 

Tambahkan juga di baris terakhir setelah tag </html> 
<?php
 $html = ob_get_contents(); 
 ob_end_clean();
 $mpdf->WriteHTML(utf8_encode($html));
 $mpdf->Output();
?>

Kode lengkapnya seperti dibawah ini:
<?php
mysql_connect("localhost","root","");
mysql_select_db("akademik");

require_once __DIR__ . '/vendor/autoload.php';
$mpdf = new \Mpdf\Mpdf();
ob_start(); 
?>
<!DOCTYPE html>
<html>
<head>
 <title>Mari Belajar Coding</title>
</head>
<body>
 <div align="center">
  <h2 align="center">Data Mahasiswa</h2>
  <table align="center" width="60%" border="1">
   <thead>
    <tr>
     <th>NIM</th>
     <th>Nama</th>
     <th>Alamat</th>
     <th>Jurusan</th>
    </tr>
   </thead>
   <tbody>
    <?php
    $sql="select * from mahasiswa";
    $query=mysql_query($sql) or die(mysql_error());
    while ($dataMahasiswa=mysql_fetch_array($query)) {
    ?> 
    <tr>
     <td><?=$dataMahasiswa['nim']?></td>
     <td><?=$dataMahasiswa['nama']?></td>
     <td><?=$dataMahasiswa['alamat']?></td>
     <td><?=$dataMahasiswa['jurusan']?></td>
    </tr>
    <?php
    }
    ?>
   </tbody>
  </table>
 </div>
</body>
</html>
<?php
 $html = ob_get_contents(); 
 ob_end_clean();
 $mpdf->WriteHTML(utf8_encode($html));
 $mpdf->Output();
?>

Membuat Laporan PDF dengan PHP

Teman-teman bisa mengubah  ukuran layar dan sebagainya. contoh:
<?php

// Define a default Landscape page size/format by name
$mpdf = new \Mpdf\Mpdf(['mode' => 'utf-8', 'format' => 'A4-L']);

// Define a default page size/format by array - page will be 190mm wide x 236mm height
$mpdf = new \Mpdf\Mpdf(['mode' => 'utf-8', 'format' => 'utf-8', [190, 236]]);

// Define a default page using all default values except "L" for Landscape orientation
$mpdf = new \Mpdf\Mpdf(['orientation' => 'L']);

Untuk memberi nama file pdf, tambahkan nama file di dalam Output(). Contoh:

$mpdf->Output("dataMahasiswa.pdf" ,'I');


Baca selengkapnya di dokumentasi mpdf . mpdf.github.io 

Tutorial membuat laporan pdf dengan PHP sampai disini. Sekian, semoga bermanfaat.

Source code:
latihanpdf.rar



Related search:
Membuat Laporan PDF dengan PHP
Membuat Laporan PDF dengan PHP dan Mysql

Related Posts

Load comments