Cara Membuat Filter Dinamis pada CRUD

Share:

Hello World's! Filtering / filtrasi merupakan fitur penting yang hampir wajib ada di sebuah sistem website. Penyaringan konten ini biasanya diterapkan pada sebuah halaman website yang menampilkan banyak data dari database. Nah, untuk mengirit waktu dan mempermudah kontrol, filter ini lah berfungsi untuk menyaring yang perlu-perlu saja, misal : "Berdasarkan Terbaru".

Anda pasti pernah menggunakan fitur ini di banyak website. Contoh saja, Anda mengunjungi situs e-commerce dan mencari suatu barang yang ingin dibeli. Pada halaman pencarian akan muncul banyak barang yang serupa, tapi harganya tidak sama. Ada yang pas dikantong, ada yang tidak. Agar mudah mencarinya, Anda menggunakan fitur filter yaitu "Urutkan berdasarkan Termurah" agar harga yang paling murah ditampilkan di bagian atas.

Lalu, gimana sih cara membuat seperti itu? Pada intinya, cara kerja filter seperti demikian adalah penggunaan method $_GET dan fungsi IF saja, tidak ada yang lain. Berikut ini adalah cara lengkap untuk membuat filter pada CRUD.

1. Pertama, pastikan Anda memiliki Database yang memiliki isi untuk ditampilkan. Setelah itu, buatlah file koneksi.php untuk menghubungkan website dengan database. Untuk caranya, bisa dilihat di => Cara Menghubungkan Website ke DataBase. Pastikan variabel koneksinya bernama $koneksi agar mudah mengaplikasikan pada script selanjutnya.

2. Masukkan script di bawah ini (pada halaman yang digunakan untuk menampilkan data)
<?php

$urutkan = $_GET['urutkan'];

if($urutkan == "terbaru" or $urutkan == NULL) {
     $urut = "ORDER BY waktu_aksi DESC";
}elseif($urutkan == "terlama") {
     $urut = "ORDER BY waktu_aksi ASC";
}

$sql = mysqli_query($koneksi, "SELECT * FROM tabel $urut");
while($row = mysqli_fetch_array($sql)) {
     echo $row['namaStruktur'];
}

?>
Penjelasan Kode
- $urutkan adalah variabel untuk mendapatkan value dari parameter "urutkan"
- fungsi IF digunakan untuk mengumpamakan value dari variabel $urutkan. Jika value $urutkan adalah "terbaru" atau tidak ada isinya, maka pengurutannya terbaru. Jika value $urutkan itu "terlama" maka pengurutan datanya berdasarkan terlama.
- waktu_aksi merupakan nama struktur yang memuat tanggal dimasukkannya value tersebut ke dalam database. Kalau belum ada, Anda harus membuatnya terlebih dahulu dengan tipedata DATETIME.
- while merupakan sintaks untuk mengulangi pengambilan data sehingga dapat terambil semua.

Script di atas adalah proses filtrasi yang dasar. Anda bisa mengembangkan dan mengkreasikan sendiri sesuai dengan kebutuhan. Misal, filter data yang ada fotonya saja, atau harga yang sesuai dengan budget pembeli. Semoga bisa bermanfaat... Salam Koding!

Tidak ada komentar