You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP加载SQL表至HTML页面报错:mysql_fetch_array函数未定义求助

解决PHP中“Uncaught Error: Call to undefined function mysql_fetch_array()”的问题

嘿,我来帮你搞定这个头疼的错误!咱们先拆解一下问题根源:

错误原因

mysql_fetch_array()是旧版MySQL扩展的函数,早在PHP 5.5就被官方废弃,PHP 7及以后的版本直接移除了这个扩展。而你现在用的是mysqli扩展(面向对象的new mysqli()方式),这俩扩展完全不兼容,所以才会触发“函数未定义”的致命错误。

解决方案:用mysqli对应的方法替代

既然用了mysqli的面向对象连接,就得用mysqli的结果集方法来获取数据,主要有两种写法:

1. 面向对象风格(推荐,和你的连接方式更统一)

用$result->fetch_array()替代mysql_fetch_array(),同时补全你没写完的代码逻辑:

<?php
include ("ConnDetails.php");
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查数据库连接是否成功
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// 替换成你实际的SQL查询语句,比如查询某个表的所有数据
$sql = "SELECT * FROM your_actual_table_name";
$result = $conn->query($sql);

// 处理查询结果并输出到HTML页面
if ($result->num_rows > 0) {
    // 先输出一个HTML表格的框架
    echo "<table border='1' cellpadding='8' cellspacing='0'>";
    
    // 先获取表头字段名并输出
    $headerFields = $result->fetch_fields();
    echo "<tr style='background-color: #f0f0f0;'>";
    foreach ($headerFields as $field) {
        echo "<th>" . $field->name . "</th>";
    }
    echo "</tr>";
    
    // 循环读取每一行数据并输出到表格行
    while ($row = $result->fetch_array()) {
        echo "<tr>";
        // 遍历当前行的所有字段值(跳过数字索引,只取关联键值)
        foreach ($row as $key => $value) {
            if (!is_numeric($key)) {
                echo "<td>" . htmlspecialchars($value) . "</td>";
            }
        }
        echo "</tr>";
    }
    echo "</table>";
} else {
    echo "<p>没有查询到任何数据</p>";
}

// 记得关闭数据库连接
$conn->close();
?>

2. 过程式风格(如果你习惯这种写法)

也可以用mysqli_fetch_array($result),但要注意传入的结果集参数是mysqli查询返回的对象:

// 替代上面的while循环部分
while ($row = mysqli_fetch_array($result)) {
    // 同样的输出逻辑...
}

额外提示

  • 确保ConnDetails.php里的$servername、$username、$password、$dbname这四个变量是正确的数据库连接信息;
  • 把代码里的your_actual_table_name替换成你要查询的真实表名;
  • 用htmlspecialchars($value)是为了防止XSS攻击,把特殊字符转义后再输出到页面更安全;
  • 如果要实现页面初始化自动加载,直接把这段PHP代码放到HTML页面的对应位置(比如<body>标签内)即可,访问页面时会自动执行查询并显示表格。

内容的提问来源于stack exchange,提问作者imtryinggtoohard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 07:39:01