Php 两个输入之间的SQL查询
我试图做一个搜索框,但我面临一个问题。 这是我正在使用的查询, 我从数据库中获取搜索查询,但查询并没有从数据库中获取Fiyat(price)、meterekare、odasayisi值 我的问题是,为什么我不能按Fiyat(价格)过滤搜索结果Php 两个输入之间的SQL查询,php,search,pdo,where,between,Php,Search,Pdo,Where,Between,我试图做一个搜索框,但我面临一个问题。 这是我正在使用的查询, 我从数据库中获取搜索查询,但查询并没有从数据库中获取Fiyat(price)、meterekare、odasayisi值 我的问题是,为什么我不能按Fiyat(价格)过滤搜索结果 我强烈建议您将和和或条件放在括号中,以帮助保持它们的条理性。现在,我敢打赌操作的顺序不是您想要的。您是对的,查询没有按照我想要的方式工作,因此我在这里。该查询仅适用于$kategori、$satkira、$searchbox、$kelime。 if (is
我强烈建议您将
和
和或
条件放在括号中,以帮助保持它们的条理性。现在,我敢打赌操作的顺序不是您想要的。您是对的,查询没有按照我想要的方式工作,因此我在这里。该查询仅适用于$kategori、$satkira、$searchbox、$kelime。
if (isset($_SESSION['id'])){
$stmt = $dbh->prepare("SELECT * FROM searclog WHERE sessionid = '".$_SESSION['id']."'");
$stmt->execute();
$row = $stmt->fetch();
if ($row){
$kategori = $row['catid'];
$satkira = $row['satkira'];
$searchbox = $row['searchbox'];
$kelime = $row['city'];
$fiyataraligi1 = $row['fiyat1'];
$fiyataraligi2 = $row['fiyat2'];
$metrekare1 = $row['metrekare1'];
$metrekare2 = $row['metrekare2'];
$odasayisi = $row['odasayisi'];
}
if(isset($_POST)){
$join = '
SELECT
ilanbasi.product_id,
ilanbasi.fiyat,
ilanbasi.ilanbasligi,
ilanbasi.sahibinden,
ilanbasi.metrekare,
ilanbasi.fiyatkuru,
ilanbasi.odasayisi,
ilanarasi.tamadres,
ilanarasi.ililce,
products.emlakuserid,
products.satkira,
products.kategori
FROM products
INNER JOIN ilanbasi
ON ilanbasi.product_id = products.emlakuserid
INNER JOIN ilanarasi
ON ilanarasi.product_id = products.emlakuserid
where (products.eonay = 1 and fiyat between "'.$fiyataraligi1.'" and "'.$fiyataraligi2.'" or ililce like "%'.$kelime.'%" and satkira like "%'.$satkira.'%" and ilanbasligi like "%'.$searchbox.'%" and kategori like "%'.$kategori.'%" or odasayisi like "%'.$odasayisi.'%" and metrekare between "'.$metrekare1.'" and "'.$metrekare2.'")
ORDER BY products.emlakuserid';
$stmt = $dbh->prepare($join);
$stmt->execute();
$join = $stmt->fetchAll();