Tutorial PHP : Contoh Membuat Laporan PDF dengan PHP dan Database MySQL
Bagi yang belum memiliki FPDF, bisa download langsung dari situs resminya di http://www.fpdf.org/
Oke tanpa berlama-lama, kita langsung ke TKP saja .
Kita ibaratkan, kita memiliki tabel data pegawai dengan format seperti berikut:
nip | nama | honor | status_ambil |
---|---|---|---|
10001 | Ivan | Rp. 1000000 | Belum |
10002 | Nita | Rp. 1000000 | Sudah |
10003 | Andre | Rp. 2000000 | Sudah |
10004 | Parto | Rp. 1500000 | Belum |
10005 | Sule | Rp. 1000000 | Belum |
Dengan format data demikian, maka pengambilan data dari dalam tabel dapat dilakukan dengan sintaks MySQL demikian :
SELECT * FROM `pegawai`
Begitu pula, sintaks ini akan dijadikan Query yang akan dieksekusi oleh PHP. Perkiraan Commandnya adalah sebagai berikut:
$sql = "SELECT * FROM `pegawai`";
$query = mysql_query( $sql );
while( $result=mysql_fetch_array( $query ) )
{
//tampilkan
}
$query = mysql_query( $sql );
while( $result=mysql_fetch_array( $query ) )
{
//tampilkan
}
Dengan melakukan kombinasi perintah dengan pembuatan laporan PDF, maka dapat dibuat script seperti berikut:
ob_start();
define('FPDF_FONTPATH','libs/fpdf/font/');
require('libs/fpdf/fpdf.php');
if( mysql_connect( "localhost","reporting","reporting" ) )
{
mysql_select_db( "kepegawaian" );
}
else
{
echo "maaf, data gagal";
}
class PDF extends FPDF
{
function Header()
{
$this->Image('logo_print.jpg',2,1,2);
$this->SetFont('Arial','B',11);
$this->Cell(0,0.75,' IVAN SILALAHI ',0,0,'C');
$this->Ln();
$this->SetFont('Arial','B',14);
$this->Cell(0,0.75,'TOKO X',0,0,'C');
$this->Ln();
$this->SetFont('Arial','',9);
$this->Cell(0,0.5,'Jl. Buntu(01234)123456',0,0,'C');
$this->Ln(); $this->Ln();
$this->SetFont('Arial','',14);
$this->Ln(); $this->Ln();
$this->SetFont('Arial','',14);
$this->Line(1, 4, 21, 4);
$this->Ln();
$this->SetFont('Arial','B',11);
$this->Cell(0,0.75,'HRD',0,0,'C');
$this->Ln();
}
}
$pdf=new PDF('P','cm','Letter');
$pdf->Open();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetMargins(1.5,1,1.5);
$pdf->SetFont('Arial','B',12);
//membuat kop tabel
$x=$pdf->GetY();
$pdf->SetY($x+1);
$pdf->SetFont('Courier','B',10);
$pdf->Cell(5,0.5,'NIP',1,0,'L');
$pdf->Cell(5,0.5,'Nama',1,0,'L');
$pdf->Cell(5,0.5,'Honor',1,0,'L');
$pdf->Cell(5,0.5,'Status Ambil',1,0,'L');
//query dan arraying
$sql ="SELECT * FROM `pegawai`";
$query = mysql_query( $sql );
while( $result= mysql_fetch_array( $query ))
{
$nip = $result['nip'];
$nama = $result['nama'];
$honor = $result['honor'];
$status_ambil = $result['status_ambil'];
$pdf->SetFont('Courier','B',10);
$pdf->Cell(5,0.5,'$nip',1,0,'L');
$pdf->Cell(5,0.5,'$nama',1,0,'L');
$pdf->Cell(5,0.5,'$honor',1,0,'L');
$pdf->Cell(5,0.5,'$status_ambil',1,0,'L');
}
$pdf->Output();
Selamat mencoba buat anda semua ,,.
No comments:
Post a Comment