Cara Membuat Menu Filter & Search ke Semua Kolom pada PHP

Cara Membuat Menu Search ke Semua Kolom pada PHP – Hai  ketemu lagi dengan saya dan pada kesempatan kali ini saya akan memposting tentang cara membuat menu filter dan search ke semua kolom menggunakan PHP. Filter ini kita menggunakan combobox sehingga hanya menampilkan data yang sesuai dengan nilai yang dipilih pada combobox atau bisa saja dikosongi jika ingin mencari ke semua kolom dan ke semua baris. Sebenarnya search bisa hanya ke satu kolom saja namun itu terlalu tanggung jadi saya buat contoh sekalian ke semua kolom jadi sobat nanti bisa menyesuaikannya dengan aplikasi yang sobat buat.

Jika kita tidak menggunakan datatables tentunya kita harus membuat menu search dan pagination sendiri. Ini biasa digunakan jika sobat mempunyai data yang sangat banyak, karena jika menggunakan datatable jika sobat menggunakan cara yang biasa tentu akan sangat lemot nanti. Oleh karena itu jika datanya sangat banyak ribuan bahkan jutaan dan sobat menggunakan datatable maka sobat harus menggunakan ajax dan tentunya bukan ajax yang biasa dan itu sangat rumit. Oleh sebab itu banyak yang mengakalinya dengan membuat tabel sendiri dengan menu search dan pagination sendiri. Namun pada contoh kali ini saya akan memposting terlebih dahulu tentang search.

Membuat Database MySQL

1. Pertama yang WAJIB ada yaitu sobat harus membuat sebuah database. Sobat bisa menggunakan tools bantu seperti navicat, heidi SQL atau lainnya. Sobat juga bisa membuatnya dengan mengakses url localhost/phpmyadmin -> klik tab Database dan tuliskan db_dewankomputer-> Klik tombol Create/Buat.

2. Buat tabel untuk mengetes nantinya apakah benar-benar terkoneksi atau belum dengan mengetikkan query dibawah ini pada tab SQL lalu klik tombol Kirim/Go

 

3. Isikan data pada tbl_mahasiswa_search dengan mengetikkan query dibawah ini

 

Cara Membuat Menu Filter & Search

Untuk mempercantik tampilannya saya menggunakan bootstrap 4. Tidak usah berlama-lama, saya akan memberikan contohnya, yaitu sebagai berikut

1. Pertama buatlah folder pada htdocs, pada contoh saya beri nama folder dewan-search.

Karena pada contoh kali ini saya menggunakan bootstrap maka, ada beberapa librari yang harus sobat masukkan. Pada tag <head>…</head> tambahkan baris css berikut

Kemudian pada tag <body> paling bawah tambahkan baris javascript berikut

Karena keperluan demo maka saya contohkan online, jika untuk keperluan development maka sobat perlu mendownloadnya terlebih dahulu. Atau nanti di akhir saya berikan link untuk mendownload project pada postingan ini beserta file css dan jsnya.

2. Buatlah file koneksi.php pada folder project sobat dan isikan dengan script dibawah. Saya segaja tidak membuat file koneksi pada satu file dengan menu search seperti kebanyakan tutorial karena dalam penerapannya itu tidaklah mungkin jika kita membuat file koneksinya pada setiap halaman karena akan sangat susah nanti jika akan mengimplementasikan atau memindahkan server kita harus ganti satu per satu. Oleh karena itu kita harus membuatnya pada satu file saja dan jika ingin pindah server kita akan menggantinya di file ini saja.

isikan sesuai dengan host, user, password, dan nama database sobat. Untuk contoh di bawah ini saya berinama database dengan nama db_dewankomputer.

Jika sobat ingin tahu cara mengkoneksikan dengan dua database atau lebih dalam satu aplikasi maka sobat bisa kunjungi postingan dibawah ini

Cara Membuat Koneksi dengan Database MySQL bisa Dua atau Lebih Koneksi database/Multiple Connection dalam Satu Host maupun beda Host Menggunakan PHP – Part 3

 

3. Buatlah file index.php pada folder sobat dan buat form search serta tabelnya. Isikan dengan script dibawah ini

Penjelasan :

Kode diatas merupakan kode pencariannya, kita menggunakan metode object oriented dan prepare statement. Cara ini dinilai paling aman jika kita menggunakan mysqli. Untuk perbedaan Object Oriented dan Procedural maka sobat bisa lita postingan dibawah

Cara Membuat Koneksi dengan Database MySQL menggunakan PHP

 

4. Jika sobat jalankan maka akan menjadi seperti dibawah

 

Contoh diatas merupakan contoh standar jika sobat ingin membuat menu search pada aplikasi PHP. Ada lagi cara yang lebih bagus yaitu search menggunakan Ajax jadi kita bisa membuat menu search tanpa loading. Itu akan saya bahas pada tutorial selanjutnya. Sekain postingan saya tentang Cara Membuat Menu Filter & Search ke Semua Kolom pada PHP. Jika ada pertanyaan atau masih bingung sobat bisa tanyakan pada kolom komentar yang tersedia pada kolom paling bawah.

Baca juga :

Cara Membuat Menu Filter & Search dengan Ajax Tanpa Loading pada PHP

Membuat CRUD Expert & Pencarian dengan JQuery, Ajax, Bootstrap Modal, SweetAlert dan WYSIHTML5 pada PHP

Jika sobat ingin mendownload tutorial diatas maka sobat bisa klik link dibawah ini :

Sampai jumpa pada postingan saya selanjutnya..

18 thoughts on “Cara Membuat Menu Filter & Search ke Semua Kolom pada PHP

  1. min biar pas buka index blm muncul data tabelnya gmn ya? krn saking bnyknya data muncul semua kasihan load nya…
    jd saat klik button cari saja baru muncul tabel nya sesuai yg diinginkan tampil…

    1. tinggal bikin action saat klik tombol cari pake ajax atau javascript dan di awal ngga perlu menampilkan datanya,
      cari saja di postingan saya pernah saya bahas tentang pencarian data tinggal disesuaikan sesuai kebutuhan

      1. koq gak nemu ya…
        maaf min msh belajaran…bingung nggak perlu ditampilkannya saat dibaris ini atau gmn ya…
        if ($res1->num_rows > 0)

    1. saya ngga pake prosedural mas karena saya pernah pake prosedural ngga lolos security test dan jadi banyak vulnerability

      1. itu type dari parameternya misalkan parameternya ada 5 brarti di query ada 5 tanda tanya (?) dan di bind_param ada 5 ‘s’
        ada 4 tipe :
        i=integer
        d=double
        s=string
        b=blob
        jadi kalo id itu lebih baik ‘i’ jadi kalo ada yg jahil atau mau inject ngga bisa/error

    1. harus konek mas,
      di contoh diatas itu buat dulu file koneksi.php buat konek ke database
      setelah itu tinggal tambahkan kode
      include ‘koneksi.php’
      di setiap file yang harus ada koneksi ke databasenya
      include-nya sekali aja setiap file paling atas

  2. Notice: Constant HOST already defined in C:\xampp\htdocs\laporan\config.php on line 2

    Notice: Constant USER already defined in C:\xampp\htdocs\laporan\config.php on line 3

    Notice: Constant PASS already defined in C:\xampp\htdocs\laporan\config.php on line 4

    Notice: Constant DB1 already defined in C:\xampp\htdocs\laporan\config.php on line 5

    Warning: mysqli_stmt::bind_param(): Number of variables doesn’t match number of parameters in prepared statement in C:\xampp\htdocs\laporan\index.php on line 162

    Notice: Trying to get property ‘num_rows’ of non-object in C:\xampp\htdocs\laporan\index.php on line 166
    3

    di saya bgini jadinya ka…

    1. tinggal tambah html radio button biasa dengan value “Laki-laki” dan “Perempuan” atau “L” dan “P” sesuai yang tersimpan di database..
      terus pas kode ini ditambah
      if (isset($_POST['search'])) {
      $s_jurusan = $_POST['s_jurusan'];
      $s_keyword = $_POST['s_keyword'];
      $s_jenkel = $_POST['s_jenkel'];
      }

      dan di querynya tinggal tambah
      “AND jenis_kelamin=?” di akhir
      dan di bind_param tambah 1 “s” dan $s_jenkel

Leave a Reply

Your email address will not be published. Required fields are marked *

four − 1 =