Itulah kira - kira yang banyak di pertanyakan oleh banyak rekan - rekan yang sedang merancang laporan untuk aplikasi yang telah di buat. Memang dalam membuat aplikasi menggunakan php bagi kebanyakan orang kesulitan untuk tahap pembuatan laporan, dalam tutorial yang akan saya sampaikan ini kita akan bersama - sama membuat laporan di php berdasarkan tanggal yang di pilih, jadi yang akan kita cetak adalah laporan yang hanya kita pilih . Contoh gambar seperti di bawah ini :
Saya akan langsung membahas ke pembuatan form dan laporan serta querynya, karena saya yakin rekan - rekan sudah tahu cara membuat tabel dan membuat folder di htdocs untuk menjalankan aplikasi berbasis web ini.
- Siapkan ezpdf class, disini saya membuat laporan menggunakan ezpdf. Anda bisa langsung ambil atau download di sini ezpdfclass. Setelah file terdownload extrak ke folder localhost anda.
- Kemudian kita akan mulai membuat form seperti di atas, ketikkan atau anda bisa copas langsung script dibawah :
</fieldset>
<legend>Cari Pelamar Kerja</legend>
<form id="fftgpelamar" method="POST" action="lap-pelamar.php">
<table cellpadding="5">
<tr>
<td>Dari</td>
<td>:</td>
<td><input class="easyui-datebox" name="Dari" data-options="formatter:myformatter,parser:myparser" style="width:200px;height:25px"></td>
</tr>
<tr>
<td>Sampai</td>
<td>:</td>
<td><input class="easyui-datebox" name="Sampai" data-options="formatter:myformatter,parser:myparser" style="width:200px;height:25px"></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td><input class="easyui-linkbutton c1" type="submit" name="Submit" value="Proses" style="width:100px;height:30px">
<input class="easyui-linkbutton c3" type="reset" name="reset" value="Close" style="width:100px;height:30px" onclick="javascript:$('#dlgtglpelamar').dialog('close')"></td>
</tr>
</table>
</form>
</fieldset>
simpan ke dalam folder tempat anda meng - ektrak ezpdf class dengan nama cari-tanggal.php, dan pastikan action formnya adalah nama file laporan anda dan method nya POST.3. Langkah ketiga ini kita akan membuat laporan, dengan nama lap-pelamar.php. Buka file php anda dan ketikkan kode berikut ini
<?php
//class ezpdf yg di panggil
include "pdf/class.ezpdf.php";
$pdf = new Cezpdf('A4','lanscape');
Penjelasan dari script diatas adalah memanggil class ezpdf dengan fungsi include dan menentukan jenis kertas yang akan kita pakai untuk laporan. Lalu lanjutkan dengan mengetikkan scrip di bawah
//Set margin dan font
$pdf->ezSetCmMargins(3, 3, 3, 3);
$pdf->selectFont('pdf/fonts/Times-Roman.afm');
//Tampilkan gambar di dokumen PDF
$pdf->addJpegFromFile('mylogo.jpg',40,778,70);
//Teks di tengah atas untuk judul header
$pdf->addText(230, 815, 14,'<b>Daftar Pelamar Kerja</b>');
$pdf->addText(160, 800, 12,'<b>RS IMANUEL WAY HALIM BANDAR LAMPUNG</b>');
$pdf->addText(210, 785, 10,'Jl. Soekarno - Hatta No.1 Bandar Lampung');
//Garis atas untuk header
$pdf->line(2, 770, 590, 770);
//Garis bawah untuk footer
$pdf->line(2, 50, 590, 50);
Dari script di atas kita bisa menentukan margin, dan menambahkan logo serta membuat kop dengan posisi di tengah dan memberikan garis setelah kop serta di footer. Lanjutkan dengan mengetikkan kode dibawah ini :
//Teks kiri bawah
date_default_timezone_set("Asia/Jakarta");
$pdf->addText(410,34,8,'Dicetak tgl:' . date( 'd-m-Y, H:i:s'));
//Koneksi ke database dan tampilkan datanya
mysql_connect("localhost", "root", "");
mysql_select_db("sdm");
$Dari=$_POST['Dari'];
$Sampai=$_POST['Sampai'];
$tampil = "SELECT * FROM tbpelamar WHERE (TglSurat BETWEEN '$Dari' AND '$Sampai');";
$sql = mysql_query($tampil);
$jml = mysql_num_rows($sql);
if ($jml > 0){
$i = 1;
while($r = mysql_fetch_array($sql)) {
//Format Menampilkan data di ezPdf
$data[$i]=array('No'=>$i,
'Nomor Dokumen'=>"$r[Nomor]",
'Nama Pelamar'=>"$r[Nama]",
'Alamat'=>"$r[AlamatKTP]",
'Agama'=>"$r[Agama]",
'Program Study'=>"$r[Jurusan]",
'Jenjang'=>"$r[Jenjang]",
'IPK'=>"$r[IPK]",
'Tgl Melamar'=>"$r[TglSurat]"
);
$i++;
}
Penjelasan : pada keterangan teks kiri bawah yaitu akan menampilkan tanggal cetak laporan pada setiap halaman yang terletak di kiri bawah setiap halaman laporan. Koneksi database sesuaikan dengan nama database anda dan variabel $Dari dan $Sampai adalah fungsi dari pemanggilan form input dengan nama "Dari dan Sampai" seperti contoh paling atas, pada bagian membuat form.$tampil adalah variabel memanggil tabel pelamar dengan ketentuan field yang di pilih adala TglSurat, dan BETWEEN adalah untuk memfilter atau menyaring dari tanggal yang kita pilih $Dari s/d $Sampai.
$jml adalah menampilkan jumlah data dari record TglSurat dan akan ditambah 1 jika ada inputan baru. Selanjutnya untuk tahap membuat report ketikkan kode berikut setelah script di atas.
//Tampilkan Dalam Bentuk Table
$pdf->ezTable($data);
$pdf->ezText("\nPeriode: $Dari s/d $Sampai");
// Penomoran halaman
$pdf->ezStartPageNumbers(700, 20, 8);
$pdf->ezStream();
}
else{
echo "
<script>
alert('Tidak Di Temukan Data Pelamar');
</script>
";
}
?>
penjelasan dari script diatas eztable($data) untuk menampilkan data dalam bentuk tabel, dan ezText akan menampilkan periode tanggal yang kita pilih serta membuat penomoran halaman.
Setelah semua selesai kita ketik simpan dalam folder tempat anda ektraks class ezpdf dengan nama lap-pelamar.php. Lalu jalankan, maka akan tampil seperti gambar di bawah ini :
<script type="text/javascript">
atOptions = {
'key' : '708b5d23210c896f98a1a735c6d22b19',
'format' : 'iframe',
'height' : 90,
'width' : 728,
'params' : {}
};
document.write('<scr' + 'ipt type="text/javascript" src="http' + (location.protocol === 'https:' ? 's' : '') + '://www.varietyofdisplayformats.com/708b5d23210c896f98a1a735c6d22b19/invoke.js"></scr' + 'ipt>');
</script>
Script lengkap laporan ini bisa copas langsung :
<?php
//class ezpdf yg di panggil
include "pdf/class.ezpdf.php";
$pdf = new Cezpdf('A4','lanscape');
//Set margin dan font
$pdf->ezSetCmMargins(3, 3, 3, 3);
$pdf->selectFont('pdf/fonts/Times-Roman.afm');
//Tampilkan gambar di dokumen PDF
$pdf->addJpegFromFile('mylogo.jpg',40,778,70);
//Teks di tengah atas untuk judul header
$pdf->addText(230, 815, 14,'<b>Daftar Pelamar Kerja</b>');
$pdf->addText(160, 800, 12,'<b>RS IMANUEL WAY HALIM BANDAR LAMPUNG</b>');
$pdf->addText(210, 785, 10,'Jl. Soekarno - Hatta No.1 Bandar Lampung');
//Garis atas untuk header
$pdf->line(2, 770, 590, 770);
//Garis bawah untuk footer
$pdf->line(2, 50, 590, 50);
//Teks kiri bawah
date_default_timezone_set("Asia/Jakarta");
$pdf->addText(410,34,8,'Dicetak tgl:' . date( 'd-m-Y, H:i:s'));
//Koneksi ke database dan tampilkan datanya
mysql_connect("localhost", "root", "");
mysql_select_db("sdm");
$Dari=$_POST['Dari'];
$Sampai=$_POST['Sampai'];
$tampil = "SELECT * FROM tbpelamar WHERE (TglSurat BETWEEN '$Dari' AND '$Sampai');";
$sql = mysql_query($tampil);
$jml = mysql_num_rows($sql);
if ($jml > 0){
$i = 1;
while($r = mysql_fetch_array($sql)) {
//Format Menampilkan data di ezPdf
$data[$i]=array('No'=>$i,
'Nomor Dokumen'=>"$r[Nomor]",
'Nama Pelamar'=>"$r[Nama]",
'Alamat'=>"$r[AlamatKTP]",
'Agama'=>"$r[Agama]",
'Program Study'=>"$r[Jurusan]",
'Jenjang'=>"$r[Jenjang]",
'IPK'=>"$r[IPK]",
'Tgl Melamar'=>"$r[TglSurat]"
);
$i++;
}
//Tampilkan Dalam Bentuk Table
$pdf->ezTable($data);
$pdf->ezText("\nPeriode: $Dari s/d $Sampai");
// Penomoran halaman
$pdf->ezStartPageNumbers(700, 20, 8);
$pdf->ezStream();
}
else{
echo "
<script>
alert('Tidak Di Temukan Data Pelamar');
</script>
";
}
?>
Sekian tutorial ini semoga bermanfaat.
Mas bisa bantu saya selesaikan script ? saya pake JeasyUI dan CI juga.. sejenis private juga boleh
ReplyDeleteBoleh mas Riswan
DeleteTerima kasih.. Sangat Membantu saya,,.. Terus berbagi. :D
ReplyDeleteterimakasih tutornya mas, baru artikel dpt membantu masalah saya.
ReplyDeletemas, bole minta source code fullnya ?
ReplyDeleteterima kasih
mas, kalo misalnya kita ingin mencetak datanya berdasarkan range tanggal tertentu gmn ya, kemudian dalam laporannya range waktu tersebut ikut tercetak beserta tanggal sekarang juga tercetak. mohon bantuannya. terimakasih
ReplyDeleteboleh minta link download source code yang full nya nggak mas ? WA : 085376369313
ReplyDeletemba maaf mau tanya itu gambar yang jpg nya saya coba ubah gambar yang lain gabisa yah? Mohon pencerahannya :')
ReplyDeletemas boleh minta tolong saya mau buat laporan per tanggal tapi saya coba pake ini eror
ReplyDeletegan saya coba bisa tp orientasinya ko potrait ya ?
ReplyDeleteterimakasih banyak gang codingya
ReplyDeleteGan kenapa error d bagian ezpdfclassnya ya gan? Mohon bantuannya gan saya sudah ikuti step by step d atas
ReplyDeleteMohon bantuannya gan saya butuh ini banget terima kasih
ReplyDeleteMas cara menampilkan tulisan MA'ARIF di judul laporan header gmn yah mas caranya.??
ReplyDeleteMas bisa tolong bantuan nya bagaimana cara memfilter data di web berdasarkan jabatan dan jenis kelamin
ReplyDeleteMas bisa tolong bantuan nya bagaimana cara memfilter data di web berdasarkan jabatan dan jenis kelamin
ReplyDeleteMas saya pke html2pdf saat print database tidak nampak masalahnya apa yah mas tnk...
ReplyDeleteMin, saya punya cript seperti ini:
ReplyDelete$query = "SELECT * FROM barang_masuk WHERE (tgl_masuk BETWEEN '$tgl1' AND '$tgl2')INNER JOIN master_barang ON barang_masuk.id_master = master_barang.id_master";
tapi error,
$query = SELECT barang_masuk .id_master,barang_masuk .tgl_masuk
DeleteFROM barang_masuk
LEFT JOIN master_barang
ON barang_masuk.id_master = master_barang.id_master
WHERE barang_masuk.tgl_masuk BETWEEN '$tgl1' AND 'tgl2'
ORDER BY barang_masuk.tgl_masuk
Coba pakai query diatas bos
ini blog orang bandar lampung tohhh, salam kenal admin
ReplyDeletekasih DEMO
ReplyDeletevan
ReplyDeleteerzincan
sivas
ağrı
manisa
4CG3
whatsapp görüntülü show
ReplyDeleteücretli.show
YDA
ankara parça eşya taşıma
ReplyDeletetakipçi satın al
antalya rent a car
antalya rent a car
ankara parça eşya taşıma
JHG
https://istanbulolala.biz/
ReplyDeleteİA6
yalova evden eve nakliyat
ReplyDeletetunceli evden eve nakliyat
giresun evden eve nakliyat
ağrı evden eve nakliyat
van evden eve nakliyat
MCD
ığdır evden eve nakliyat
ReplyDeletebitlis evden eve nakliyat
batman evden eve nakliyat
rize evden eve nakliyat
niğde evden eve nakliyat
DF1
85354
ReplyDeleteBatman Evden Eve Nakliyat
Kayseri Parça Eşya Taşıma
Bayburt Lojistik
Bolu Parça Eşya Taşıma
Aksaray Evden Eve Nakliyat
38904
ReplyDeleteBatıkent Fayans Ustası
Yenimahalle Boya Ustası
Milyon Coin Hangi Borsada
Bitexen Güvenilir mi
Van Şehirler Arası Nakliyat
Mercatox Güvenilir mi
Chat Gpt Coin Hangi Borsada
Kütahya Şehirler Arası Nakliyat
Van Parça Eşya Taşıma
BE85F
ReplyDeleteçekmeköy çilingir
sultanbeyli çilingir
Coinex Güvenilir mi
Yozgat Şehirler Arası Nakliyat
Diyarbakır Evden Eve Nakliyat
Probit Güvenilir mi
Bitlis Evden Eve Nakliyat
buy turinabol
order steroids
49245
ReplyDeleteSivas Şehir İçi Nakliyat
Elazığ Lojistik
Keçiören Fayans Ustası
Kırşehir Evden Eve Nakliyat
Erzurum Şehirler Arası Nakliyat
Kocaeli Lojistik
Isparta Şehirler Arası Nakliyat
Binance Referans Kodu
Çerkezköy Oto Boya
6507F
ReplyDeleteSincan Boya Ustası
Karapürçek Boya Ustası
Ünye Mutfak Dolabı
Caw Coin Hangi Borsada
Loop Network Coin Hangi Borsada
Kütahya Evden Eve Nakliyat
Çorum Lojistik
Kocaeli Parça Eşya Taşıma
Afyon Şehir İçi Nakliyat
4DCA3
ReplyDeleteKarapürçek Parke Ustası
Kırşehir Parça Eşya Taşıma
Siirt Lojistik
Trabzon Şehirler Arası Nakliyat
Tokat Lojistik
Kütahya Evden Eve Nakliyat
Sincan Parke Ustası
Hakkari Şehirler Arası Nakliyat
Sakarya Şehir İçi Nakliyat
2BDA1
ReplyDeleteEryaman Parke Ustası
Referans Kimliği Nedir
Tekirdağ Fayans Ustası
Batman Evden Eve Nakliyat
Çerkezköy Buzdolabı Tamircisi
Gölbaşı Parke Ustası
İstanbul Evden Eve Nakliyat
Çerkezköy Petek Temizleme
Batıkent Boya Ustası
CA574
ReplyDeleteKripto Para Kazma Siteleri
Kripto Para Kazanma Siteleri
Coin Para Kazanma
Bitcoin Oynama
Kripto Para Nedir
Binance Ne Zaman Kuruldu
Kripto Para Kazma Siteleri
resimlimag.net
Kripto Para Madenciliği Siteleri
4C889
ReplyDeleteelazığ seslı sohbet sıtelerı
görüntülü sohbet sitesi
Osmaniye Rastgele Sohbet
Kilis Canlı Sohbet Siteleri
random görüntülü sohbet
muğla canlı sohbet
Amasya Telefonda Rastgele Sohbet
chat sohbet
konya görüntülü canlı sohbet
D723E
ReplyDeletemobil sohbet chat
rize canli sohbet chat
izmir sesli görüntülü sohbet
isparta canlı sohbet
balıkesir parasız sohbet siteleri
giresun mobil sohbet
uşak en iyi görüntülü sohbet uygulaması
kırıkkale rastgele sohbet odaları
Kırşehir Parasız Sohbet
71071
ReplyDeleteNonolive Takipçi Satın Al
Binance'de Kaldıraç Var mı
Nonolive Takipçi Hilesi
Coin Üretme Siteleri
Periscope Beğeni Hilesi
Bitcoin Nasıl Üretilir
Binance Hesap Açma
Alyattes Coin Hangi Borsada
Keep Coin Hangi Borsada
5C6C5
ReplyDeletephantom
chainlist
dappradar
metamask
ledger desktop
onekey
galagames
poocoin
eigenlayer
DA38D
ReplyDeletetelegram türk kripto kanalları
4g mobil
bitcoin nasıl kazanılır
en eski kripto borsası
telegram kripto grupları
huobi
paribu
binance
canlı sohbet
4150E
ReplyDelete4g proxy
rastgele canlı sohbet
papaya meyvesi
coinex
binance referans kod
canlı sohbet siteleri
telegram en iyi kripto grupları
bingx
coin nasıl alınır
19956
ReplyDelete----
----
----
----
----
----
----
matadorbet
----
B3901
ReplyDelete----
----
----
----
----
----
----
matadorbet
----