在PHP中使用count()查询将导致循环显示结果。如何解决这个问题?

phpmyadmin没有显示总和的问题,但是不能将其应用于php代码。

$conn = mysqli_connect('localhost','root','','db');
if (!$conn) { die('db error'); };
$result = mysqli_query($conn, '
select count(*) as x from users
');

$row = mysqli_fetch_assoc($result);
echo $row['x'];


预期结果:

2


实际输出:

2222222222222222222222222222222222222222222222222222222222222222222...

最佳答案

我建议您使用prepared statements

$conn = new mysqli("localhost", "root", "", "db");
if($stmt = $conn->prepare("SELECT count(*) as x FROM users")) {
    $stmt->execute();
    $result = $stmt->get_result();
    while($row = $result->fetch_assoc()) {
        $number = $row['x'];
    }
    $stmt->close();
}else{
    echo "Error";
}
$conn->close();
if(isset($number)){
    echo $number;
}

关于php - php-mysql count()查询重复结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55401310/

10-12 12:38
查看更多