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.
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.
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
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.
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.
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.
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.
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`)
);
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
Untuk mengubah tampilan web menjadi pdf tambahkan kode dibawah mysql_select_db() :
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();
?>
<?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