yakoSin adlı üyeden alıntı: mesajı görüntüle
$sorgu = "SELECT * FROM posts";
$where = array();

if(!empty($il))
$where[] = "il = '".$il."'";

if(!empty($ilce))
$where[] = "ilce = '".$ilce."'";

if(!empty($semt))
$where[] = "semt = '".$semt."'";

if(!empty($epara) and $epara>0)
$where[] = "fiyat > '".$epara."'";

if(!empty($cpara) and $cpara>0)
$where[] = "fiyat > '".$cpara."'";

$tmp = implode(" AND ",$where);

if(!empty($tmp))
$tmp = "WHERE ".$tmp;

$sql = mysql_query($sorgu.$tmp);

Yöntem teknik olarak doğru olsada kontroller çok doğru değil 2. küçüktür işareti büyüktür olacak. empty() yerine formdan gelen veriler için isset tercih edilmeli. epara cparadan küçük olmalı ve formatları kontrol edilmeli.

Örneğin 1.000 da 1000 ikiside bin lira dır vb.
Mantık doğru ama genel olarak eksik direk bu kodu kullanamazsınız. Düzenlemeniz gerekir