Merhaba,
Arama yapıyorum ama şöyle bir soru takıldı kafama. Arama kısmında şehir ve semt ile arama yaptırıyorum ama kullanıcı sadece şehirde seçebilir buna göre arama sorgusunu nasıl yapmalıyım?
Şehir seçti aldım semt seçmedi o zaman tüm semtleri getirmesi gerekir bunun için sql sorgusunu tek sorgu ile yapabilirmiyim yoksa if else ile kontrol sağlayıp iki sorgumu yapmalıyım?
ornek select * from tablom where sehir=2 and semt=6 burada semt seçmediyse sorguyu ayarlayabilirmiyim?
Php ile arama Sistemi çift sorgu
6
●154
- 03-10-2023, 12:34:53Bunu İf else ile ayırıp iki sorgu yapmadan bir çözüm varmı onu soruyorum?
kucukomer adlı üyeden alıntı: mesajı görüntüle - 03-10-2023, 14:58:48sorguya bir değişken ile şehir/semt varsa veya yoksa ek where ekleyebilirsiniz
$sql_text = ''; if($_GET['sehir'] != ''){ if($sql_text != ''){ $sql_text .= " AND"; }else{ $sql_text .= ' WHERE'; } $sql_text .= " sehir = '".$_GET['sehir']."'"; } if($_GET['semt'] != ''){ if($sql_text != ''){ $sql_text .= " AND"; }else{ $sql_text .= ' WHERE'; } $sql_text .= " semt = '".$_GET['semt']."'"; } $query = "SELECT * FROM tablo".$sql_text; - 03-10-2023, 15:44:42Çok basit, uzun uzun koda gerek yok en kısa ve öz hali budur.
if($semt){
$semt = "AND semt='".$semt."'";
}else{
$semt = "";
}
$sql = "select * from tablom where sehir=2 and semt='".$semt."'";