php - 使用 MySQL/PHP 结果构建 HTML 表

标签 php mysql

我正在尝试从 MySQL 查询构建一个动态 HTML 表(无论列数或行数),但我认为我可能做错了什么,因为它根本不起作用。

我有使用 Oracle 的经验,但我对 MySQL 很陌生。我尝试检查我正在使用的 MySQL/PHP 函数是否存在,我认为情况确实如此。

<?php
$mysqli = new mysqli("localhost", "dbuser", "dbpass", "db");

/* check connection */
if ($mysqli->connect_errno) {
    printf("Connect failed: %s\n", $mysqli->connect_error);
    exit();
}

/* Select queries return a resultset */
if ($result = $mysqli->query("SELECT * FROM user")) {
    /* build html table */
    echo "<table class='table '><thread><tr>";

    $ncols = mysqli_num_rows($result);
    for ($i = 1; $i <= $ncols; $i++) {
        $column_name  = mysqli_field_name($result, $i);
        echo "<th>".$column_name."</th>";
    }

    echo "</tr></thread><tbody>";

    while ($row = mysqli_fetch_array($result, OCI_NUM)) {
        echo "<tr>";
        for ( $ii = 0; $ii < count($row); $ii++ ) {
            echo "<td>" . $row[$ii] . "</td>";
        }
        echo "</tr>";
    }

    echo "</tbody></table>";

    /* free result set */
    $result->close();
}

$mysqli->close();
?>

感谢任何帮助!

史蒂夫

编辑:我按照建议添加了错误报告并得到:

Fatal error: Call to undefined function mysqli_field_name() in connection.php on line 20

最佳答案

你的基本问题是,你可能从mysql_函数转换为mysqli,这太棒了!但是没有函数 mysqli_field_name() 这个函数只是作为 mysql_ 函数存在。

您需要mysqli_result::fetch_fields() mysqli 中的函数/方法来获取字段名称。

关于php - 使用 MySQL/PHP 结果构建 HTML 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24648797/

相关文章:

php - 我对 sql 部分有困难

php - 如何在 woocommerce 结账的订单接收页面上更改送货地址和账单地址的文本?

mysql - MSSQL表复制数据到MYSQL表

php - jQuery 和 Ci 未正确处理注销功能

php - 如何解析url响应?

php - 通过表单输入进行 SQL 注入(inject)攻击

c++ - 如何在c/c++中从MySQL获取记录?

php - 使用过滤器时如何对所有行求和

php - 如何在插入之前删除表中的所有数据

mysql - 使用具有多个结果的子查询,这些结果取决于主查询