Ada pertanyaan masuk.. bagaimana caranya membuat laporan PDF berdasarkan data yang diinginkan saja?... nah disini saya mencoba ingin membantu teman-teman yang mungkin mempunyai pertanyaan yang sama.. Dalam membuat laporan PDF, penulis menjatuhkan pilihan pada Class.Ezpdf.. karena disamping ringan, jenis PDF ini paling mudah untuk dipelajari.. bahkan EzPDf sudah ter-include dalam server XAmpp, yaitu pada Folder Xampp/php/PEAR..
Berikut susunan tabel yang akan kita gunakan:
Nama Database: dblatihan
Nama Tabel: tdosen
Spesifikasi tabel:
nid (Varchar 10)
nama (Varchar 100)
alamat (TEXT)
jk (Char 1)
handPhone (Varchar 13)
fakultas (Varchar 30)
Copykan file class.ezpdf dan class.pdf ke dalam folder kerja Anda di Xampp/htdocs... kemudian disini kita membutuhkan file folder lainnya (agar lebih mudah, bisa langsung saja disedot source codenya) :D
Buat file reportNilai.php isinya sbb:
<form action="printNilai.php" method=“POST”>
<table>
<tbody>
<tr>
<td>Fakultas</td>
<td>:</td>
<td>
<select name="fakultas"> <option value="Pilih Fakultas">Pilih Fakultas</option>
<?php
mysql_connect("localhost","root","");
mysql_select_db("dblatihan");
$sql = mysql_query("SELECT fakultas FROM tdosen GROUP BY fakultas ASC");
while ($data = mysql_fetch_array($sql)){
echo "<option value="$data[fakultas]">$data[fakultas]</option>";
}
?> </select>
</td>
</tr>
<tr>
<td><input type="submit" value="Cetak" /></td>
</tr>
</tbody>
</table>
</form>
Buat file printNilai.php, isinya sbb:
<?php// Include file class.ezpdf dalam folder fungsiPDF
include ('fungsiPDF/class.ezpdf.php');
// Koneksi ke database dan tampilkan datanya
mysql_connect("localhost", "root", "");
mysql_select_db("dblatihan");
if ($_POST[fakultas]=='Pilih Fakultas'){
echo "Pilih dulu Fakultasnya.. ";
}
else {
$pdf = new Cezpdf();
// Set margin dan font
$pdf->ezSetCmMargins(3, 3, 3, 3);
$pdf->selectFont('fungsiPDF/fonts/Courier.afm');
$all = $pdf->openObject();
// Tampilkan logo
$pdf->setStrokeColor(0, 0, 0, 1);
$pdf->addJpegFromFile('logo.jpg',20,800,69);
// Teks di tengah atas untuk judul header
$pdf->addText(200, 820, 16,'<b>Laporan Data Dosen</b>');
$pdf->addText(90, 800, 14,'<b>AGUS SAPUTRA & ASFA SOLUTION, ASFAMEDIA - ASFA GROUP</b>');
// Garis atas untuk header
$pdf->line(10, 795, 578, 795);
$pdf->addText(50, 780, 8,'<b>Fakultas :</b> '. $_POST[fakultas]);
// Garis bawah untuk footer
$pdf->line(10, 50, 578, 50);
// Teks kiri bawah
$pdf->addText(30,34,8,'Dicetak tgl:' . date( 'd-m-Y, H:i:s'));
$pdf->closeObject();
// Tampilkan object di semua halaman
$pdf->addObject($all, 'all');
// Query untuk merelasikan kedua tabel
$sql = mysql_query("SELECT * FROM tdosen WHERE fakultas = '$_POST[fakultas]'");
$jml = mysql_num_rows($sql);
$i = 1;
while($r = mysql_fetch_array($sql)){
$data[$i]=array('<b>No</b>'=>$i,
'<b>NID</b>'=>$r[nid],
'<b>Nama</b>'=>$r[nama],
'<b>Alamat</b>'=>$r[alamat],
'<b>jk</b>'=>$r[jk],
'<b>handphone</b>'=>$r[handPhone]);
$i++;
}
$pdf->ezTable($data, '', '', '');
// Penomoran halaman
$pdf->ezStartPageNumbers(320, 15, 8);
$pdf->ezStream();
}
?>
Semoga artikel tutorial ini kiranya dapat memberikan manfaat yang sebesar-besarnya kepada Anda.</div>
izar
ezpdf sama fpdf kyknya lengkapan fpdf ya?
yg sy msh blm tahu bgaimana caranya bikin kolom yg di merge atau displit atau di html kalo gk salah tag "cols"....
Agus Saputra
izar @ iya.. lebih lengkap FPDF, tp untuk sk yg ga neko2, class.ezpdf.. easy & simple.. :)
aziz
kalo mgkn bwt CI gmn maz??
Agus Saputra
aziz @ ada kok di buku "Trik Kolaborasi Codeigniter & jQuery"...
aziz
mksd saya yg menampilkan data nya yg diinginkan saja,,yg dibuku terbaru "Trik Kolaborasi Codeigniter & jQuery" cm menampilkan smua database,, mgkn bisa share ilmunya??thx.
Fivi
ya mz Agus,,mgkn bisa share caranya agar menampilkan report pdf berdasarkan pada data yg ingin kita cetak saja,,misal siswa A saja, jadi tidak semua siswa di databasenya dicetak,,kan di buku terbaru "Trik Kolaborasi Codeigniter & jQuery" cm dasar bgt, msh blm paham..mksiii
Didin
mz Agus usul nichh..,mgkn buku proyek nya kalo bisa jgn web berita,,gmn kalo ditambahin ada sistem membership gt?biar keren dikit,n ga monoton..
Agus Saputra
aziz & fivi @ nanti saya coba share yah di tutor selanjutnya..
Didin @ mudah2an bisa segera terlaksana yah.. ada rencana juga untuk bikin yg kompleks... :)
akbar z
Bang, saya mau nanya donk,kalo sql query untuk memanggil dari 3 tabel yg berelasi gimana bang? Misalkan saya mau menampilkan data nilai siswa per siswa, per kelas dan per mata pelajaran. Datanya saya ambil dari tabel nilai (sbg tabel transaksi), dan 3 tabel master yaitu tabel siswa, tabel kelas dan tabel mata pelajaran. Jadi yg ingin saya hasilkan adalah nis,nama siswa, kelas, mata pelajaran, dan nilai siswa. Begitu kira2 ilustrasinya bang. Mohon penjelasannya dari Bang Agus. Terima Kasih.
Agus Saputra
jadi pake query gini aja..
SELECT * FROM siswa, kelas, mata_pelajaran WHERE siswa.id_kelas = kelas.id_kelas AND siswa.id_mata_pelajaran = mata_pelajaran.id_mata_pelajaran
ajixcrew
Salama hangat...
Mas klo buat rowspan tabel mengunakan ezpdf gmna... ya!!
love_PHP
mas agus gimana caranya biar nama file yang laporan pdf yang di hasilkan berdasarkan, kondisi yang kita print contoh : fakultas-ekonomi.pdf
maksih dulu sebelumnya
Agus Saputra
love_PHP @ lebih simpelnya sih, sebelum diupload,ada baiknya dikasih nama dulu aja..
love_PHP
gak gini mas, file nya iut kan di create otomatis, dari cetak laporan menggunkan ezpdf
enari
wah tutorial bagus.. gimana laporan dengan cristall report bisa ?
salamun
cara buat pagw baru di ezpdf gimana ya mas agus?.
rivan
Mas file download ga ada apa bisa diupload lagi, thx
Agus Saputra
rivan @ bisa ANda cari di bagian menu "Link Download", memang beberapa link download saya alihkan urlnya, dari server ke ziddu, untuk menghemat hosting.. coba klik menu "Download"..
akhmad
Mas contoh di cakephp gmna ya, newbie mas.
syaifur89
masss mau tanyaa dan lebih simplenya minta bantuan...
untuk koding buat sertifikat gimana cetak pdf nyaa
conto saja seperti mailmerge diMS word
GBY
Mas, kalau data mahasiswanya disertai foto, gimana caranya.
joe sandai
bagaimana jika setelah melakukan pendaftaran,,,???
Agus Saputra
joe sandai @ bisa, kan dalam pendaftaran itu ada kode unik atau bisa disebut Kode Pendaftaran, itu yang akan dijadikan kondisi untuk create PDF
andhika
tanya om, untuk nampilkan logo itu, file gambarnya diletakkan dimana? punya saya kok gk muncul
andhika
tanya om, untuk nampilkan logo itu, file gambarnya diletakkan dimana? punya saya kok gk muncul
novry
untuk membatasi karakter laporan pdf gimana ya ? soal nya saya sudah membuat jika karakter terlalu panjang dia meneruskan karakter hingga melewati batas garis ... mohon pencerahannya kk :)
terima kasih ....
dany
pak agus bukunya bagus pak jquery dan codeigniter mau nanya nih pak CI yg di sertakan di cd versi berapa ya sy download yg terbaru v 2.1.4 apakah ada perbedaan syntaks coding perintahnya pak,salam dhany
Agus Saputra
dany @ pada buku yang saya tulis adalah versi 1.7.2.. seiring berkembangnya waktu CI banyak merilis versi, dan tentu saja ada beberapa perbedaan skrip.. terutama pada penulisan class controller, model.. tapi nggak banyak..
dany
pak agus bikin ebok script login dengan level akses user dunk pak seperti user1,user2,user3 dengan menu yg berbeda,salam
sofyan
mas, file ezpdf nya ditaro di folder apa ya klo sesuai dengan listing diatas. mohon pencerahanya mas
Agus Saputra
sofyan @ didalam folder fungsiPDF
+ folder utama
++ fungsiPDF
- class.ezpdf.php
hendriana
Mas, Mohon bantuannya dong..
Seandainya di Database pegawai kita terdapat tgl_lahir, namun kita ingin menampilkan data list kita dengan kriteria hanya yg berusia lebih dari 52 tahun (mendekati usia pensiun).
Bagaimana caranya ya? terimakasih bantuannya
Lukman Dalimunthe
Mas saya mau tanya ketika saya coba tampilkan gambar di dokumen pdf gambar tidak tampil muncul pesan This PDF document might not be displayed correctly, padahal saya sudah menginstall acrobat reader untuk menjalankan pdf. ini pak agus scriptnya
<?php
include('class.ezpdf.php');
include('class.pdf');
$pdf = new Cezpdf();
$pdf->ezText("<b>Gambar di PDF</b> \n\n",12);
// Tampilkan gambar di dokumen PDF
$pdf->ezImage("bee.JPG", 10, 270, 'none', 'left');
$pdf->ezStream();
?>
fatim
file Sourcenya kok gax bisa di download??
Agus Saputra
fatim @ wah iya sepertinya ada yang salah.. nanti segera diupdate ya
bunga
iya mas masa tidak bisa di download mas?????
bunga
Maaf mas kok ga bisa di download mas??????
andi
selamat sore mas agussaputra sy ingin ebook Super Dahsyat Responsive Web Design dengan Foundation 5 punya mas kira-kira masih ada ndak mas sy ingin belajar dan menambah wawasan sy mhon bantuanya
bintang
mas agus. terimakasih banyak ya sudah mau berbagi ilmunya
AGUS SAPUTRA
bintang @ sama-sama mas
yeyen
mas kalau untuk cetak pdf setelah di filter gimana ya mas untuk laravel, jadi saya mempunyai tampil data sebelum difilter atau data keseluruhan sudah bisa dicetak pdf, namun setelah difilter data masih tampil semua, jika masnya pernah memakai laravel mohon penjelasanya, terimakasih
AGUS SAPUTRA
yeyen @ halo mas, maaf saya sudah tidak mengikuti perkembangan Laravel, cuma selintas saja.. saya spesialis di CakePHP, Codeigniter sebenarnya.. namun saya pikir sama saja.. pada saat di Layout (View), tinggal dikasih URL link saja (buat GET parameternya).. terus bikin skrip file diatas..
http://teziger.blogspot.com
bermanfaat bangeett.. thankss gann jangan lupa mampir hehe :)
error
mas ini kenapa yah
Parse error: syntax error, unexpected '$data' (T_VARIABLE), expecting ',' or ';'
Toni
Mas Agus Saputra
Bagaimana menampilkan foto mahasiswa yang sudah ada di database ?
AGUS SAPUTRA
Toni @
$data berisi nama gambarnya yang diambil dari database...
Nama gambar harus sudah disimpan dalam database sebelumnya