PHP空处理

PHP空处理,php,null,Php,Null,我正在尝试设置一个处理程序,因此当我得到0个结果时,它会显示一条消息,表示找不到结果。我有点工作,但我目前面临两个问题 当我得到0个结果时,它会显示“未找到结果”,但也会显示以下错误: 警告:mysqli_query()希望参数2是字符串,即第74行的/customers/b/6/d/herculesdjs.co.uk/FETCH.PHP中给出的对象 第74行是这样的: $fetch_row = mysqli_query($con,$result); 这是完整的脚本减去连接信息$城市由下拉框定

我正在尝试设置一个处理程序,因此当我得到0个结果时,它会显示一条消息,表示找不到结果。我有点工作,但我目前面临两个问题

当我得到0个结果时,它会显示“未找到结果”,但也会显示以下错误:

警告:mysqli_query()希望参数2是字符串,即第74行的/customers/b/6/d/herculesdjs.co.uk/FETCH.PHP中给出的对象

第74行是这样的:

$fetch_row = mysqli_query($con,$result);
这是完整的脚本减去连接信息$城市由下拉框定义。这已经过测试,效果良好:

$result = mysqli_query($con,
sprintf("SELECT * FROM `SouthYorkshire` WHERE  `city_id` = '%s'",
       preg_replace("[^0-9]","", $city)));


// Handle Null Results.
$fetch_row = mysqli_query($con,$result); 
$numrows = $fetch_row[0]; 
if($numrows==0) 
{ 
echo "<div id=\"NoResults\">";
echo "There are no clubs in this area, Why not come back another day. Know of one in this area? Why not submit it via Contact Us.";
echo "</div>";
}

while($row = mysqli_fetch_array($result))
{
echo "<div id=\"Results\">";
echo "<div id=\"theclub\">";
echo "<div class=\"ClubName\">";
echo $row['EstName'];
echo "</div><br>";
echo "<div class=\"Location\">";
echo $row['EstAddress2'];
echo "</div>";
echo "<br>";
echo "<div id=\"website\"><a href=\"#\"><img src=\"photos/more-info.png\" width=\"75\" height=\"25\"/></a> <a href=\"" . $row['EstWebsite'] ."\" target=\"_blank\"><img src=\"photos/visit-website-button.png\" width=\"75\" height=\"25\" /></div></a></div>";
echo "<br>";
}
echo "</div>";`
$result=mysqli\u查询($con,
sprintf(“从'SouthYorkshire'中选择*,其中'city\u id`='%s'”,
preg_替换(“[^0-9]”,“,$city”);
//处理空结果。
$fetch\u row=mysqli\u查询($con,$result);
$numrows=$fetch_行[0];
如果($numrows==0)
{ 
回声“;
echo“这个地区没有俱乐部,为什么不改天再来。知道这个地区有俱乐部吗?为什么不通过联系我们提交它。”;
回声“;
}
while($row=mysqli\u fetch\u数组($result))
{
回声“;
回声“;
回声“;
echo$row['EstName'];
回声“
”; 回声“; echo$row['EstAddress2']; 回声“; 回声“
”; 回声“; 回声“
”; } 回声“`
我遇到的另一个问题是,如果数据库中有结果,它不会显示警告。它显示找到的结果,但也显示“没有俱乐部”消息


有什么建议吗?

天知道为什么您认为这是获取查询返回的记录数的正确方法:这完全是胡说八道

您应该去掉
$fetch\u row
,改为使用:

$numrows=mysqli\u num\u行($result);

可能是因为您已经在
$result=mysqli\u查询($con,
中声明了
$con
,并且您正在
$fetch\u row=mysqli\u查询($con,$result)中再次使用它
删除一个。仔细看看你在做什么!你正在将
mysqli\u查询的结果
传递给
mysqli\u查询
。那是错误的。
mysqli\u查询()的正确用户:
mysqli\u查询($con,$query);
你正在传递结果集。弗雷德-ii--你的权利,它不需要,谢谢你指出:)deceze——正如在另一篇评论中提到的,我用PHP编程才一周左右。最初的代码是来自另一个论坛的建议。我知道这是错误的,但我不知道如何修复它谢谢你,这一切都很好。我通过谷歌搜索得到了原始代码。我用PHP编程才一个星期左右。都是自学的。我不认为另一种方法是正确的,但不同论坛上有很多人说这样做。我不喜欢在没有先试的情况下就在这里提问。@bbates先生:先试是一种肯定的荣誉(太多人不这样做!)-但我怀疑你一定误解了你以前遇到的论坛和搜索结果。无论如何,PHP文档总是一个查找应该如何做的好地方-它充满了示例,一旦你习惯了它的布局,它就很容易使用和遵循。我想我是这样做的,因为有那么多关于空结果的查询会扰乱你的大脑搜索它们,哈哈