我有一个函数,它需要一个SQL查询和参数/参数数组。此函数在UPDATE
语句上正常工作,但不在SELECT
语句中。函数mysqli_fetch_array
未返回任何内容,我找不到原因。我得到的错误信息是;SQL函数不返回结果
“mysqli_fetch_array()预计参数1被mysqli_result,布尔给”
我使用的PHP版本5.5。
查询如下:
<?php
$txtSearch = isset($_POST["txtSearch"]) ? $_POST["txtSearch"] : "";
$result_search = null;
$query = "";
if(!empty($txtSearch))
{
if($page == "adverts")
{
$query = "
SELECT
A.ID,
A.title,
A.productname,
A.price,
A.description,
A.productlocation,
(SELECT I.name FROM image I WHERE I.advertID = A.ID LIMIT 1) AS name
FROM advert A
WHERE A.title LIKE ?";
}
$result_search = queryDB($query, array("s", "%".$txtSearch."%"));
}
while($row = mysqli_fetch_array($result_search))
{
echo
"<div class='post_container'>
<div class='title_banner'>".$row["title"]."</div>
<div>£".$row["price"]."</div>
</div>";
}
?>
为什么OP应该将查询改为执行某些不同的事情?问题中的查询(大概)是正确的,问题在于其他地方。 –
的确如此,它可能会有所不同。如果您使用此查询OP,请谨慎使用它。结果取决于您的数据库设计。如果不确定,最好使用先前的查询。 – jozhe