Membuat File PDF dengan PHP dan FPDF
Artikel ini bermula ketika saya sedang menyeleseaikan skripsi. Kebetulan waktu ini topik yang saya bahas menyangkut dengan pdf, khususnya membuat output dari sebuah teks dalam bentuk pdf. User bisa mendownlaod pdf ini, sebagai catatan, file pdf dibuat secara on the fly, artinya biar php sendiri yang membuat pdf.
- seperti biasa, berdoa dulu
- download modul fpdf di www.fpdf.org. disana sudah ada tutorial penggunaan modul ini dari yang paling mudah sampai sukar. Ketika anda mendownload, otomatis anda akan mendapatkan manual dari modul tersebut. Modul ini berupa class, anda harus membuat object dari class ini, setelah object terbentuk anda bisa menggunakan semua methodnya.
- terkait dengan class dan object, anda paling tidak pernah belajar OOP (object Oriented Programming). Saya rasa ini adalah kemampuan dasar yang tidak bisa ditawar untuk mempelajari pemrograman modern. Wong kode HTML nya blogger aja sudah menggunakan OOP.
- setelah anda mendapatkan file kompresi dari fpdf, extract pada direktori server anda, nama direktorinya biasanya fpdf.
- buat sebuah file php dalam direktori utama tadi misal fpdf/file_php_anda.php. file ini yang akan membuat pdf dengan memanfaatkan modul fpdf.
<?php
require_once(”fpdf.php”);
$pdf=new FPDF();
$pdf->AddPage();
$pdf->setAuthor(”BimoWeb.com”);
$pdf->SetFont(’Arial’,'B’,16);
$pdf->Write(20,’Saya sedang belajar PHP-PDF’);
$pdf->Output();
?>
- require_once atau include yang mengarah pada modul fpdf.php
- membuat object dengan cara $pengenal=new FPDF();
- tentukan font yang akan anda gunakan dengan cara setFont(’Nama_font’,’Style_font’,ukuran). Style font berupa B untuk bold, I untuk miring dan kosong untuk normal. Parameter ukuran dalam bilangan.
- Minimal file pdf anda harus memiliki 1 page, caranya dengan AddPage()
- Gunakan Output() untuk mengirimkan keluaran dalam bentuk pdf ke browser.
Saya ingin data yang ditampilkan berasal dari database, bagimana tuh? Take action now
<?php
require_once(”fpdf.php”);
$pdf=new FPDF();
$pdf->AddPage();
$pdf->setFont(”Helvetica”,”",12);
mysql_connect(”localhost”,”root”,”rahasia.com”);
mysql_select_db(”nama_database_ku”);
$cmd=”select isi,judul from nama_tabel_ku”;
$exe=mysql_query($cmd);
$i=1;
while ($data=mysql_fetch_array($exe)){
$pdf->write(10,$i);
$pdf->write(10,$data["judul"]);
$pdf->ln(10);
$pdf->write(10,$data["isi"]);
$i+=1;
}
$pdf->Output();
?>
Jika outputnya panjang dan bisa melebihi 1 halaman, maka fpdf otomatis akan membuat halaman tambahan, anda tidak perlu menambahkan AddPage().




Hai, thanks ya udah mampir. Maaf sebelumnya kalo komennya gak nyambung. Soalnya nyari2 shoutbox ga ada padahal cuma mau say hello aja. Thanks sekali lagi udah mampir. Sbg ungkapan terima kasih, blog ini sudah saya link. Thanks lagi….
thank’s
OK thank’s mas bim, kok nda pernah OL
mas bimo, makasih ya ilmunya
bermanfaat sekali buat kami2 yg pengen belajar
tetep semangat menulis yah
ditunggu tulisan yg lainnya
bisa gak dijadiin plugin buat wordpress
entar tak kasih link deh
Mas bimo , terima kasih tulisan nya, tapi saya mau nanya…..
klo mau nampilin yang ini ke pdf gmn ? source nya di bawah….
<?
$mykunci = $_POST['kunci_pencarian'];
$hsl = $_POST['but_cari'];
if (isset($hsl)) {
if ( (!empty($mykunci))) {
$mykunci = strtoupper($mykunci);
$mykunci = strip_tags($mykunci);
$mykunci = trim ($mykunci);
$query=”SELECT * FROM table_batuan “;
$result = mysql_db_query(”geology”, $query);
if ($result) {
echo ”
Kode Batuan
Nama Batuan
“;
while ($r = mysql_fetch_array($result)) {
echo ”
$r[KodeBatuan]
$r[NamaBatuan]
“;
}
}
}
}
echo “”;
?>
Itu klo di browser tampilan sekumpulan data dari databases.
saya pengen bisa tampilin ke pdf beserta table-table nya yang dari html. Trus cara merubah ukuran kertas di pdf pengen jadi A3 landscape gmn? tolong bantuan nya… saya newbie di bidang fpdf ini.. tolong ya mas bimo…. terima kasih
Mas Bimo…..
Kalo ngasih jarak antara field pake apa?
krn saling berdempetan
AddPage();
$pdf->setFont(”Helvetica”,”",12);
@mssql_connect(”MOSS\MOSS”,”ePa”,”P@ssw0rd#1″);
@mssql_select_db(”HRD_CABUL”);
$cmd=”select TOP 20nik,fullname,spv_name from PE_MASTER”;
$exe=@mssql_query($cmd);
$i=1;
if($exe){
while ($data=@mssql_fetch_array($exe)){
$pdf->write(10,$i);
$pdf->write(10,$data["nik"]);
$pdf->write(10,$data["fullname"]);
$pdf->write(10,$data["spv_name"]);
$pdf->ln(5);
$i+=1;
}
}
$pdf->Output();
?>
hasil’y
10001andhiebos1
20002jakabos2
monya
1 0001 andhie bos1
2 0002 jaka bos2
kalo saya
$pdf->write(10,$i);
$pdf->write(10,’ ‘);
$pdf->write(10,$data["nik"]);
$pdf->write(10,’ ‘);
$pdf->write(10,$data["fullname"]);
$pdf->write(10,’ ‘);
$pdf->write(10,$data["spv_name"]);
tapi engk rapih??
Mau nanya dong, cara dapetin file fpdf.php itu gmn y??
km download aja di fpdf.org
nahh ni dia nih. artikelnya mantab mas. kebetulan saya juga lagi nyari cara buat bikin file pdf dari php. buat skripsi nih.
makasi banyak mas bimo, semangat!
mas bim,, thanx artikelnya ya.. lagi butuh nie.. hehehe
Kang. . .tanya neh. . . selain php to pdf. . bisa bantu tuk php to excel dan word. . .Thanks y
mas bimo…leh minta tolong bantuan na ga …
saya programmer awam…
saya leh di kasi tau koding untuk printing dokumen and send email ga dgn php..THX bgt n tlng di krm k email y….^^
mas, tolong donk script & penjelasan utk bikin header, footer di fpdf, sekalian cara ‘masang’nya…:)
terimakasih sebelumnya…
mas, balik lagi nih
saya punya form kayak gini nih:
Jenis Kegiatan
Rutin
TroubleShooting
Order
Mohon bantuannya, seandainya di-check lebih dari satu, bagaimana supaya value-nya bisa muncul dalam satu kolom/field di mysql-nya.
Terimakasih…
mas bisa ga ukuran pdf nya dikecilin dijadiin buat struk belanjaan gitu ,,??
tolong ya mas..
makasih ya mas bimo ….