繁体   English   中英

SQL计数查询返回的行数预设为1,而不是实际的行数

[英]SQL count query returning number of rows preset as 1 instead of actual number of rows

下面是从中获取数据库表中许多行的PHP代码。 但是以下代码始终将行数返回为1。 请帮助我解决问题,以从数据库中获取正确的行数。

$db=mysqli_connect("localhost","root","","test");               
     echo "<div class='row text-center col-lg-12' align='center'>";     
    $cmd="SELECT COUNT(*) FROM product WHERE product_name LIKE '%$search_query%'";

    $result = mysqli_query($db, $cmd);
    $total = mysqli_num_rows($result);

如果您执行SELECT COUNT(*)您将返回到第一行的计数值所在的行。 因此,您需要像这样获得COUNT()值:

$result = mysqli_query($db, $cmd);
$row = mysqli_fetch_array($result);
$total = $row[0];

这应该工作:

$db=mysqli_connect("localhost","root","","test");               
     echo "<div class='row text-center col-lg-12' align='center'>";     
    $cmd="SELECT * FROM product WHERE product_name LIKE '%$search_query%'";

    $result = mysqli_query($db, $cmd);
    $total = mysqli_num_rows($result);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM