Membuat Script PHP Untuk Report atau Rekap Data (2)
December 12th, 2009 | by rosihanari |
Cetak Artikel Ini
Beberapa waktu yang lalu saya pernah nulis artikel tentang cara buat script untuk rekap data untuk kasus yang agak simple. Nah… kali ini saya akan mencoba menulis kembali untuk masalah yang sama, namun dengan kasus yang agak sedikit kompleks.
Perhatikan studi kasus berikut ini, misalkan kita punya data karyawan yang tersimpan dalam 3 buah tabel yaitu ‘karyawan’, ‘golongan’ dan ‘bidang’ sebagaimana tampak pada gambar berikut ini
Tabel: Bidang

Tabel: Golongan

Tabel: Karyawan

Yang jadi permasalahan adalah, bagaimana cara kita membuat script PHP untuk menghasilkan output seperti di bawah ini?

OK sebelum kita mulai membuat scriptnya, terlebih dahulu kita harus punya ide pembuatannya dulu. Apabila kita perhatikan bahwa setiap baris data pada tabel output menunjukkan informasi mengenai jumlah total pegawai, jumlah pegawai pada masing-masing golongan untuk setiap bidangnya. Maka nanti idenya adalah, kita baca semua bidang yang ada dahulu, kemudian untuk setiap bidangnya kita cari jumlah data masing-masing item nya (total pegawai dan jumlah karyawan berdasarkan golongan). Sambil mencari jumlah masing-masing item untuk setiap bidang, jangan lupa kita jumlahkan jumlah masing-masing itemnya untuk mencari total item di akhir tabel.
Berdasarkan ide tersebut, kita buat script PHP sbb:
<?php /* perintah koneksi ke db ditulis di sini */ // membuat awal dan header tabel echo "<table>"; echo "<tr><th>No</th><th>Bidang</th><th>Jum Karyawan</th><th>Gol. Satu</th><th>Gol. Dua</th><th>Gol. Tiga</th></tr>"; // nilai awal untuk nomor urut data $no = 1; // nilai awal jumlah total karyawan $totalKaryawan = 0; // nilai awal jumlah karyawan gol 1 $totalGol1 = 0; // nilai awal jumlah karyawan gol 2 $totalGol2 = 0; // nilai awal jumlah karyawan gol 3 $totalGol3 = 0; // membaca semua data bidang $query = "SELECT * FROM bidang"; $hasil = mysql_query($query); while ($data = mysql_fetch_array($hasil)) { // baca kode bidang $kodeBidang = $data['kd_bidang']; // baca nama bidang $namaBidang = $data['nama_bidang']; // cari jumlah karyawan untuk setiap kode bidang $query2 = "SELECT count(*) as jum FROM karyawan WHERE kd_bidang = '$kodeBidang'"; $hasil2 = mysql_query($query2); $data2 = mysql_fetch_array($hasil2); $jumlah = $data2['jum']; // menjumlahkan setiap jumlah karyawan setiap bidang // untuk menghitung total seluruh karyawan $totalKaryawan += $jumlah; // cari jumlah karyawan untuk setiap kode bidang bergolongan 1 $query2 = "SELECT count(*) as jum1 FROM karyawan WHERE kd_bidang = '$kodeBidang' AND kd_gol = 1"; $hasil2 = mysql_query($query2); $data2 = mysql_fetch_array($hasil2); $jumGol1 = $data2['jum1']; // menjumlahkan setiap jumlah karyawan gol 1 di setiap bidang // untuk menghitung total seluruh karyawan bergolongan 1 $totalGol1 += $jumGol1; // cari jumlah karyawan untuk setiap kode bidang bergolongan 2 $query2 = "SELECT count(*) as jum2 FROM karyawan WHERE kd_bidang = '$kodeBidang' AND kd_gol = 2"; $hasil2 = mysql_query($query2); $data2 = mysql_fetch_array($hasil2); $jumGol2 = $data2['jum2']; // menjumlahkan setiap jumlah karyawan gol 2 di setiap bidang // untuk menghitung total seluruh karyawan bergolongan 2 $totalGol2 += $jumGol2; // cari jumlah karyawan untuk setiap kode bidang bergolongan 3 $query2 = "SELECT count(*) as jum3 FROM karyawan WHERE kd_bidang = '$kodeBidang' AND kd_gol = 3"; $hasil2 = mysql_query($query2); $data2 = mysql_fetch_array($hasil2); $jumGol3 = $data2['jum3']; // menjumlahkan setiap jumlah karyawan gol 3 di setiap bidang // untuk menghitung total seluruh karyawan bergolongan 3 $totalGol3 += $jumGol3; // tampilkan baris datanya untuk setiap bidang echo "<tr><td>".$no."</td><td>".$namaBidang."</td><td>".$jumlah."</td><td>".$jumGol1."</td><td>".$jumGol2."</td><td>".$jumGol3."</td></tr>"; // increment untuk nomor urut data $no++; } // membuat baris untuk total data echo "<tr><td colspan='2'>Jumlah</td><td>".$totalKaryawan."</td><td>".$totalGol1."</td><td>".$totalGol2."</td><td>".$totalGol3."</td></tr>"; // membuat akhir dari tabel echo "</table>"; ?>
What do u think? ternyata tidak sulit bukan membuat report atau rekap data dengan PHP. Selamat mencoba ya. Oya, script di atas, belum saya coba jalankan sendiri di browser melainkan menulis kodenya langsung di Wordpress, so.. kalo ada error mohon maklum. Tolong koreksi script di atas ya, siapa tahu ada error atau bug nya
Please report any errors or bugs of the script in the comments box below.
Beberapa artikel terkait
- Membuat Script PHP untuk Rekap Data dari Data Mentah
- Script PHP untuk Membuat Report Format MS. Excel
- Membuat Script PHP untuk Hapus Data dengan Multi Selection
- Alternatif Script Untuk Memproses Input Data Form Dinamis
- Cara Cepat Merestrukturisasi Tabel dan Data
- PHP Dasar – Array
- Script PHP untuk Membuat Dokumen RTF
- Script PHP untuk Mengedit Data Via Form
- Script PHP untuk Menampilkan Data dalam Tabel dengan Warna Baris Selang-seling
- Script PHP untuk Edit Data dengan Komponen RadioButton pada Form
Share this article on:
Kata kunci: membuat data rekap - membuat report php - script php - script rekap data - trik php script -
Mau kaos (T-shirt) Wordpress keren? (
Rosihan Ari adalah seorang programmer, penulis buku, trainer, peneliti dan berusaha menjadi seorang blogger sejati dengan memberikan yang terbaik buat negeri ini. Berfokus pada computer programming serta computer aided learning for mathematics, ia ingin berbagi ilmu yang dimilikinya. 


mau tanya nich mas,
Gimana cara buat link untuk ngeprint, web kita.. namun pd saat ngeprint printah klick print nya tdk ikut tercetak…
makasih banget nich mas dah banyak membantu saya…
thank ya.. atas amal nya