【问题标题】:How to count and show all information with php using while loop?如何使用while循环计算和显示php的所有信息?
【发布时间】:2016-06-27 03:54:27
【问题描述】:

我正在尝试使用 while 循环显示我的 mysql 数据库中的所有信息,当然我可以不使用 while 循环来执行此操作,但我想以 html div 的形式显示这些信息。

$cnt = mysqli_num_rows(mysqli_query($CONNECT, "SELECT * FROM `reviews`"));
echo $cnt;
while ($Row = mysqli_fetch_assoc($cnt)) {
    echo '<div class="panel panel-default">
    '.$Row['name'], $Row['text'].'
    </div>';
}

我的代码有什么问题,我该如何修复它以使其正常工作?

【问题讨论】:

  • 你需要获取mysqli_query而不是mysqli_num_rows的结果。

标签: php html mysql while-loop


【解决方案1】:

您需要在查询中获取关联数组,而不是计数。

$q = mysqli_query($CONNECT, "SELECT * FROM `reviews`");
$cnt = mysqli_num_rows($q);
echo $cnt;
while ($Row = mysqli_fetch_assoc($q)) 
{
    echo '<div class="panel panel-default">
    '.$Row['name'], $Row['text'].'
    </div>';
}

【讨论】:

    【解决方案2】:

    你需要一个来自 mysql 的有效资源,你从 mysqli_querymysql_num_rows 得到它,你得到表中的行数,但没有资源。

    $res = mysqli_query($CONNECT, "SELECT * FROM `reviews`");
    while ($Row = mysqli_fetch_assoc($res)) {
        echo '<div class="panel panel-default">
        '.$Row['name'], $Row['text'].'
        </div>';
    }
    

    因此,如果您重新使用mysqli_num_rows 命令,如果您的连接正确,它应该可以工作。

    【讨论】:

    • echo $cnt; 应该是echo mysqli_num_rows($cnt);
    猜你喜欢
    • 1970-01-01
    • 2021-04-25
    • 1970-01-01
    • 2020-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多