Dalam aplikasi berbasis web ataupun desktop yang berhubungan dengan databse pasti kita diminta untuk membuat modul laporan.terdapat banyak format yang dapat kita pilih dalam pembuatan laporan aplikasi berbasis web,bisa dengan html (dan css), CSV, excel dll. tapi pada tutorial kali ini kita akan memanfaatkan sebuah library php(fpdf) untuk membuat laporan tersebut. yang nantinya format laporannya berbentuk PDF(potable document format).dan adapun langkah-langkahnya download FPDF disini kemudian buat direktori baru di derektori root(htdocs) dengan nama COBA_FPDF. Karena saya menggunakan XAMPP maka direktori htdocs ada di C:\xampp\htdocs .setelah itu Extract FPDF-nya di derektori COBA_FPDF.
Selanjutnya kita akan memmbuat databasenya, sebagai contoh kita akan membuat database mahasiswa. kalo pada artikle-artikle sebelumnya adalam pembuatan databsenya kita menggunakan sql editor seperti MySQL-Front atau phpMyadmin, maka pada tutoy kali ini kita akan mencoba membuat databasenya menggunajkan CMD(Command Prompt).tapi sebelum kita menuliskan perintah2 sql di Command Prompt, pastikan dulu bahwa sql dan aphace-nya sudah ranning.dan karena saya menggunakan XAMPP, jadi untuk mengetahi aapakan sql-nya sudah ranning atau belum gunakan XAMPP Control Panel.jelasnya seperti gambar di bawah ini :
Kemudian tuliskan perintah di bawah ini di Command Prompt, untuk masuk ke direktori mysql :
cd \xampp\mysql\bin (enter) dan untuk masuk ke mysql gunakan perintah ini mysql -u root –p (enter)
ada pesan seperti ini ”Welcome to the MySQL monitor” . dan untuk membuat databasenya gunakan perintah sql di bawah ini :
CREATE DATABASE mahasiswa;
USE mahasiswa;
CREATE TABLE `data_mahasiswa`(
`nim` varchar(12) NOT NULL,
`nama` varchar(100) collate latin1_general_ci NOT NULL,
`alamat` varchar(100) collate latin1_general_ci NOT NULL,
PRIMARY KEY (`nim`)
);
INSERT INTO `data_mahasiswa` (`nim`, `nama`, `alamat`) VALUES
('0612502526', 'faiz fadli','jl ulujamixxxxxx'),
('0614500569', 'Fitri Meiyanti','jl prnyelxxxxxx tomangxxxxxx');
Gunakan perintah ” SELECT * FROM data_mahasiswa; ” untuk menampilkan data yang sudah di masukkan ke database.
Database sudah dibuat, selanjutnya kita buat satu file dengan nama index.php dan save di direktori COBA_FPDF.kopi paste codedi bawah ini ke index.php :
1
2 $host ="localhost";
3 $user="root";
4 $password="";
5 $database="mahasiswa";
6 mysql_connect($host,$user,$password) or die("Koneksi server gagal");
7 mysql_select_db($database);
8
9 //Queri untuk Menampilkan data
10 $query ="SELECT * FROM data_mahasiswa";
11 $db_query = mysql_query($query) or die("Query gagal");
12 //Variabel untuk iterasi
13 $i = 0;
14 //Mengambil nilai dari query database
15 while($data=mysql_fetch_row($db_query))
16 {
17 $cell[$i][0] = $data[0];
18 $cell[$i][1] = $data[1];
19 $cell[$i][2] = $data[2];
20 $i++;
21 }
22 require('fpdf.php');
23
24 class PDF extends FPDF
25 {
26 //Fungsi Untuk Membuat Header
27 function Header()
28 {
29 //Pilih font Arial bold 15
30 $this->SetFont('Arial','B',15);
31 //Geser ke kanan
32 $this->Cell(80);
33 //Judul dalam bingkai
34 $this->Cell(30,10,'Title',1,0,'C');
35 //Ganti baris
36 $this->Ln(1);
37 }
38
39 //Fungsi Untuk Membuat Footer
40 function Footer()
41 {
42 //Position at 1.5 cm from bottom
43 $this->SetY(-15);
44 //Arial italic 8
45 $this->SetFont('Arial','I',8);
46 //Page number
47 $this->Cell(0,10,'Halaman ke : '.$this->PageNo(),0,0,'C');
48 }
49 }
50
51 $pdf = new PDF('P','cm','A4');
52 $pdf->Open();
53 $pdf->AddPage();
54 $pdf->SetFont("Arial","B",12);
55 $pdf->Cell(16,1,'Laporan Data Mahasiswa','LRTB',0,'C');
56 $pdf->Ln();
57 $pdf->Cell(1,1,'No','LRTB',0,'C');
58 $pdf->Cell(3,1,'NIM','LRTB',0,'C');
59 $pdf->Cell(6,1,'NAMA','LRTB',0,'C');
60 $pdf->Cell(6,1,'ALAMAt','LRTB',0,'C');
61 $pdf->Ln();
62
63 $pdf->SetFont('Times','',10);
64 for($j=0;$j<$i;$j++)
65 {
66 //menampilkan data dari hasil query database
67 $pdf->Cell(1,1,$j+1,'LBTR',0,'C');
68 $pdf->Cell(3,1,$cell[$j][0],'LBTR',0,'C');
69 $pdf->Cell(6,1,$cell[$j][1],'LBTR',0,'C');
70 $pdf->Cell(6,1,$cell[$j][2],'LBTR',0,'C');
71 $pdf->Ln();
72 }
73 //menampilkan output berupa halaman PDF
74 $pdf->Output();
75 ?>
Penjelasan Dari Code di Atas
Ø function Footer()Metode ini digunakan untuk menampilkan footer. Metode ini dipanggil secara otomatis oleh AddPage()
Ø function Header()Metode ini digunakan untuk menampilkan header. Metode ini dipanggil secara otomatis oleh AddPage() dan tidak disarankan untuk dipanggil langsung dalam aplikasi. Implementasi metode ini dalam FPDF adalah kosong, jadi Anda harus membuat sub class dan menimpanya untuk mendapatkan hasil sesuai keinginan.
Ø AddPage();Menambahkan halaman baru ke dalam dokumen. Jika halaman sudah ada, maka metode Footer() dipanggil terlebih dahulu untuk menampilkan footer. Kemudian halaman ditambahkan, posisi sekarang diset ke kiri atas sesuai margin kiri dan margin atas, dan Header() dipanggil untuk menampilkan header.
Ø SetFont('Arial','I',8);
SetFont('font family(arial,tahoma,dll)','font style(B,I,U)',Ukuran Font);
Mengeset font yang digunakan untuk menampilkan teks. Anda harus memanggil metode ini minimal sekali sebelum menampilkan teks atau dokumen yang dibuat dianggap tidak valid.
style
B = Bold
I = italic
U = underline
Family
Courier
Helvetica atau Arial
Times
Symbol(simbol) dan lain-lain.
Ø Ln(1); Ln([float h]) Ganti baris. Nilai absis menjadi sama dengan margin kiri dan ordinat berubah dan ditambah dengan nilai yang diberikan sebagai parameter.
Ø Cell(1,1,'No','LRTB',0,'C');
Cell(float w [, float h [, string txt [, mixed border [, int ln [, string align [, boolean fill [, mixed link]]]]]]])
Membuat sel (area berbentuk kotak) dengan pilihan garis pembatas (border), warna latar (background) dan teks. Pojok kiri atas sel menunjukkan posisi sekarang. Teks dapat diatur perataannya. Setelah metode ini dipanggil, posisi sekarang berpindah ke kanan atau ke baris berikutnya. Anda juga bisa memberikan/memasukkan link ke dalam teks.
Jika perpindahan halaman otomatis aktif dan sel melewati batas, maka perpindahan halaman akan dilakukan terlebih dahulu sebelum menampilkan sel.)
Parameter
w = Lebar sel. Jika nilainya 0, sel akan melebar ke margin kanan.
h = Tinggi sel. Nilai default: 0.
txt = Teks yang akan ditampilkan. Nilai default: teks kosong.
border = Menunjukkan apakah pembatas sel (bingkai) akan ditampilkan atau tidak.
Nilainya adalah:
· 0 : tidak menampilkan pembatas
· 1 : menampilkan pembatas
atau string dengan karakter berikut (urutan bebas):
· L : kiri
· T : atas
· R : kanan
· B : bawah
Nilai default: 0.
Ø PageNo() Mengembalikan nomor halaman sekarang.
Untuk Melihat hasil dari kode di atas tuliskan : localhost/COBA_FPDF/ di browser kesayangan anda dan ini hasilnya :
Download Source code-nya disini

5 comments:
mas klw mau nampilin file dot pdf hasil uploadtan gmn?
klw yg di atas kan menampilkan data ke bentuk pdf..
hmm...
mungkin gini x ya....
<a href='namafile.pdf'>tampilkan</a>
coba aja.....
saya coba ya gan.
saya udah coba fpdfnya.. kalo itu kan seumpama datanya panjang ga bisa otomatis ke bawah sendiri, tapi malah nabrak data di kolom berikutnya ...
Gimana caranya agar bisa otomatis..
Minta pencerahannya..
coba deh baca yang ini :)
http://achmatim.net/2012/02/08/membuat-auto-wrap-content-pada-tabel-dengan-fpdf-dan-php/
Post a Comment