Postingan lainnya
Form Pencarian
form pencarian saya terdiri dari 5 kolom, ketika saya hanya mencari tahun peraturan saja data tidak muncul tapi jika mencari nomor dan tahun bersamaan muncul datanya. intinya ketika saya mencari tanpa menggunakan nomor maka data tidak muncul jika menggunakan nomor maka muncul. gimana solusi nya mas?
<?php
include 'login/config/koneksi.php';
//pencarian
if(isset($_GET['cari']))
{
$kategori_peraturan = $_GET['kategori_peraturan'];
$nomor_peraturan = $_GET['nomor_peraturan'];
$status_peraturan = $_GET['status_peraturan'];
$tahun_peraturan = $_GET['tahun_peraturan'];
$kata = $_GET['kata'];
$result = mysql_query("select * from pusat_data where
kategori_peraturan like '%".$kategori_peraturan."%'
and status_peraturan like '%".$status_peraturan."%'
and nomor_peraturan like '".$nomor_peraturan."%'
and tahun_peraturan like '%".$tahun_peraturan."%'
and judul_peraturan like '%".$kata."%' ORDER BY id_peraturan DESC
");
}
else
{
$result = mysql_query("select * from pusat_data ORDER BY id_peraturan DESC");
}
?>
7 Jawaban:
klo ditambah % waktu mencari nomor 1 malahan yang muncul tidak nomor 1 saja seperti 1, 10, 11 dan seterusnya
Jawaban Terpilih
coba dibuat gini gan, jadi wherenya hanya yang terisi saja
$add = "";
if ($kategori_peraturan)
$add = $add . " and kategori_peraturan like '%".$kategori_peraturan."%' ";
if ($status_peraturan)
$add = $add . " and status_peraturan like '%".$status_peraturan."%' ";
if($nomor_peraturan)
$add = $add . " and nomor_peraturan like '".$nomor_peraturan."%' ";
if($tahun_peraturan)
$add = $add . " and tahun_peraturan like '%".$tahun_peraturan."%' ";
if($kata)
$add = $add . " and judul_peraturan like '%".$kata."%' ";
$q = "select * from pusat_data where (1=1) ".$add." ORDER BY id_peraturan DESC";
$result = mysql_query($q);
kalau boleh atau fungsi where ny itu buat apa ya mas
kalau boleh tau fungsi where ny itu buat apa ya mas
where (1=1) ? cek disini https://stackoverflow.com/questions/8149142/where-1-1-statement semoga membantu