Membuat Class pagging combobox dengan PHP
Tentunya bagi seorang programmer yang sudah sering membangun
aplikasi berbasis web, penggunaan paging dalam menampilkan datanya merupakan hal yang biasa, dan kebanyakan paging yang digunakan berbentuk urutan angka yang biasanya menampilkan sebagian atau seluruh angka halaman yang tersedia. Biasanya kendalanya jika ditampilkan seluruh angka halamannya ketika jumlah data semakin besar maka tampilan angka halaman tersebut semakin banyak dan ini akan banyak mengambil space halaman web tersebut. Sedangkan jika hanya menampilkan angka halaman sebagian saja, pengguna aplikasi tersebut akan kesulitan untuk berpindah ke halaman yang belum dimunculkan secara langsung.
Class merupakan model pemrograman berorientasi objek, dan hal tersebut merupakan pembahasan yang sangat luas, akan tetapi secara sederhana kita dapat memahami class sebagai model suatu objek yang dengan mudah kita dapat menggunakan objek tersebut secara cepat (reuseablity).
Pada artikel ini akan dibahas pembuatan class pagging combobox dan penggunaannya dengan bahasa pemrograman PHP. Combobox merupakan salah satu komponen form untuk input data yang dalam HTML berupa tag <select></select>, dengan memanfaatkan combobox ini kita bisa menampilkan semua halaman yang tersedia tanpa perlu meyembunyikannnya dan juga tidak akan mengambil space halaman aplikasi web tersebut.
Membuat class paging
Dalam bahasa pemrograman PHP untuk membuat suatu class diawali dengan perintah class yang diikuti dengan nama class tersebut, misalkan saja class yang akan dibuat mengunakan nama paging : class paging { isi dari class tersebut }
Dalam class dibutuhkan variabel yang digunakan untuk menyimpan karakteristik dari class tersebut yang biasanya disebut sebagai properties. Dalam class paging kita perlu menentukan bebarapa variabel yang dibutuhkan, yaitu : variabel untuk menyimpan jumlah data per-halamannya, variabel untuk menyimpan banyaknya data dan variabel yang menyimpan data halaman yang aktif.
class paging {
var $RowPerPage;
var $AllRow;
var $PageActive;.
Text 1: class properties
Selanjutnya selain variabel, diperlukan juga fungsi yang berguna untuk mendefinisikan perilaku – perilaku tertentu dari class paging tersebut, dan biasanya disebut sebagai methode. Dalam setiap membuat class diperlukan fungsi sebagai konstruktor dengan nama yang sama dengan nama classnya, isinya adalah proses inisialisasi nilai beberapa variabel class tersebut. Dalam hal ini fungsi konstruktor ini akan dibuat untuk menginisialisasi variable $RowPerPage dan $PageActive, ini digunakan untuk menentukan nilai defaultnya.
Pada bagian ini kita berikan nilai default untuk variabel $RowPerPage adalah sama dengan nilai variabel $rpg dan $PageActive adalah satu ( untuk memastikan jika nilai halaman yang aktif tidak didefinisikan akan dianggap halaman aktif adalah halaman satu).
......
function paging($rpg) {
$this->RowPerPage = $rpg;
$this->PageActive = 1;
}
.....
Text 2: fungsi constructor
Untuk membantu proses perhitungan dalam menampilkan halamannya dibutuhkan fungsi yang menghitung nilai awal dan akhir baris dalam halaman tertentu. Dalam class ini digunakan fungsi dengan nama FirsRow (awal baris) dan LastRow (akhir baris).
......
function FirstRow($page=1){
if (isset($page)) $this->PageActive=$page;
$hasil=(($this->PageActive*$this->RowPerPage)- $this->RowPerPage+1);
return $hasil;
}
......
Text 3: fungsi bantuan perhitungan baris awal dan akhir
Selanjutnya untuk menampilkan comboboxnya pada apalikasi web diperlukan fungsi untuk memprosesnya, pada bagian ini fungsi tersebut diberi nama ListCombo yang memiliki 3 parameter masukan, yaitu : 1. jumlah data, 2. halaman yang aktif dan 3. Link yang akan diakses .
Fungsi ListCombo memproses perhitungan untuk menampilkan bagian halaman berdasarkan nilai jumlah keseluruhan data dan banyaknya data per-halaman.
Pada kode sumber tersebut di beberapa baris pertama adalah untuk menghitung banyaknya halaman yang dihasilkan terhadap jumlah keseluruhan data, dan juga menghitung sisa data dari keseluruhan data yang jumlahnya sama dengan jumlah data dalam satu halaman. Di bagian baris sisanya adalah menampilkan perintah HTML <select></select> dengan menambahkan kode javascript pada even onchange, sehingga ketika nilai list berubah program akan mengakses link tersebut untuk halaman yang dituju. Kemudian pada bagian perulangan digunakan untuk menampilkan HTML <option></option> yang merupakan bagian dari TAG <select></select> , tentunya dengan mengisi nilainya sesuai dari hasil perhitungan banyaknya halaman dan jumlah data perhalamannya.
....
function ListCombo($AllRow,$PageActive,$Link) {
if (! empty($RowPerPage)) $this->RowPerPage=$RowPerPage;
$this->AllRow = $AllRow;
$this->PageActive = $PageActive;
$sisa=$this->AllRow % $this->RowPerPage;
$Nilai=$this->AllRow-$sisa;
$Page=$Nilai / $this->RowPerPage;
echo "
Text 4: fungsi listcombo
Bagian-bagian program tadi jika digabungkan akan menajadi satu bagian class yang reuseablity. Kita simpan program tersebut dalam file dengan nama Pcombobox.php.
Penggunaan Class Paging
Class yang sudah kita buat di atas, dapat langsung kita gunakan untuk membuat aplikasi web dengan data yang terbagi-bagi dalam beberapa halaman. Kita buatkan file baru untuk memanggil class Pcomobbox.php yang sudah kita buat sebelumnya.
Index
Kita beri nama file tersebut index.php . Pada contoh file index.php nilai data keselurhannya adalah 50 dengan membagi setiap halamannya sebanyak 5 data, sehingga akan terbagi menjadi 10 (sepuluh) halaman. Halaman yang muncul pada combobox tidak tertulis secara explicit, tetapi yang terpenting adalah data yang dimunculkan mulai dari nomor urut tertentu sehingga kita bisa menentukan data nomor urut keberapa yang akan kita tampilkan. Proses perubahan data dilakukan setiap kita rubah isi list halaman dari combobox tersebut.
FirstRow($_GET[p])-1;
$RowPage= $page->RowPerPage;
?>
| No | Informasi |
| ListCombo(50,$_GET[p],"index.php?"); ?> | |
Text 5 : index.php
Walaupun class paging ini dapat secra langsung kita gunakan akan tetapi lebih baik jika dimodifikasi untuk meningkatkan fungsi dan tampilannya sehingga lebih bisa disesuaikan dengan kebutuhan dalam membangun aplikasi berbasis web, untuk mendownload filenya silahkan klik disini. Selamat mencoba !.
Popularity: 18% [?]
Did you enjoy this post? Why not leave a comment below and continue the conversation, or subscribe to my feed and get articles like this delivered automatically to your feed reader.
Comments
@ mas christ
kalo digunakan diquery tinggal diletakan dibagian bawah setelah eksekusi querynya. gunakan aja perintah php untuk koneksi ke database. untuk membatasi data yang ditampilkan cukup gunakan perintah limit untuk database mysql dengan batasan nilai awal dan akhirnya didapat dari class terserbut.
semoga membantu
@mas trah
kalo urusan comobbox agar bisa muncul pada textbox harus menggunakan javascript.jadi prosesnya ada di browser tidak di webservernya.
Coba pelajari javascript.
Salam,
What I love about blogs is that they spark an concept in my brain. When that occurs, I feel as I need to comment with the hope it might be interesting to some individuals. Because you will find plenty of blogs and forums with numerous points of view, they question your comprehension. It is at these moments when you’ve important insignt other individuals may not have experienced, together with the blogger him/herself. I find myself coming back to to your writings only because you have a number of really great insights and also you have been at this a really long time, that is very inspiring and tells me you know your stuff. Keep triggering imagination in other people!


dik….keren tutorialnya….kapan-kapan aku belajar ya,,,,