【问题标题】:How to loop php sql output into a table? [duplicate]如何将php sql输出循环到表中? [复制]
【发布时间】:2019-11-23 16:53:23
【问题描述】:

我的代码目前从sql查询收集的信息中逐行输出。

此时的输出如下所示:

First Name: test2 - Last Name: test2 - Appointment Time: 12041312
First Name: Jim - Last Name: Bob - Appointment Time: 13051130
First Name: John - Last Name: Smith - Appointment Time: 13051230

我正在尝试将其排序为 HTML 表格。任何帮助表示赞赏。

输出代码:

if (mysqli_num_rows($result) > 0) {
    while($row = mysqli_fetch_assoc($result)) {
        echo "First Name: " . $row["FirstName"]. " - Last Name: " . $row["LastName"]. " - Appointment Time: " . $row["AppTime"]. "<br>";
    }
} else {
    echo "No results, please try again";
}

【问题讨论】:

  • ORDER BY columname 添加到查询中。让 MySQL 为您完成所有工作
  • PS 你可以让 ECHO 更容易阅读echo "First Name: $row[FirstName] - Last Name: $row[LastName] - Appointment Time: $row[AppTime]&lt;br&gt;";
  • yuk,我不喜欢你提出的变量插值建议....@RiggsFolly 在某些 PHP 版本上它可能更快或更慢..但在 PHP 7 上,此方法接缝为 @987654321 @,我发现这很奇怪.. 编辑哦,有`{$<...>}` 进行了基准测试,这与变量插值不同
  • @RaymondNijland 对速度一无所知。它只是更容易阅读/维护所有这些连接
  • @RaymondNijland “不知道速度”的意思是我什至没有考虑它是否会对执行速度产生任何影响。 “我认为我什至会将单行分隔成多行......” 完全同意。但我不想让一个明显的新手在他们学习曲线的当前位置上用任何超出他们似乎能力的东西来迷惑他们

标签: php html mysql


【解决方案1】:

这就是您必须将数据添加到表中的方式。

if (mysqli_num_rows($result) > 0) {
    echo "<table>";
    echo "<tr>
            <th>First Name</th>
            <th>Last Name</th>
            <th>Appointment Time</th>
        </tr>";
    while($row = mysqli_fetch_assoc($result)) {
        echo "<tr>
                <td>{$row['FirstName']}</td>
                <td>{$row['LastName']}</td>
                <td>{$row['AppTime']}</td>
            </tr>";
    }
    echo "</table>";
} else {
    echo "No results, please try again";
}

如果问题与您的查询速度有关,请考虑添加分页。或者尝试索引您的数据库表。

【讨论】:

    猜你喜欢
    • 2011-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-13
    • 1970-01-01
    • 2020-10-21
    • 2018-10-29
    相关资源
    最近更新 更多