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

PHP报错Call to undefined function updateTable() 原因排查求助

问题原因及解决方案

首先,你遇到的Fatal error: Call to undefined function updateTable()本质是**functions.php文件未被正确解析,导致updateTable()函数没有被定义**,核心问题出在showAlldata()函数的错误处理代码上:

在functions.php的showAlldata()中,你调用mysqli_error()时没有传入数据库连接对象$connection:

if(!$result) {
    die("Eroare" . mysqli_error()); // 这里缺少必填的$connection参数
}

mysqli_error()必须接收有效的数据库连接资源作为参数,否则PHP会抛出警告;如果你的错误级别设置较高,会直接导致functions.php脚本终止解析,后面的updateTable()函数自然不会被加载。而当你把updateTable()直接粘贴到其他文件时,避开了这个错误点,所以函数能正常被调用。

修复步骤

把mysqli_error()改成mysqli_error($connection),修正后的showAlldata()函数:

function showAlldata() {
    global $connection;
    $query = "SELECT * FROM login";
    $result = mysqli_query($connection, $query);
    if(!$result) {
        die("Eroare" . mysqli_error($connection)); // 传入$connection参数
    }
    while($row=mysqli_fetch_assoc($result)){
        $id=$row['id'];
        echo "<option value='$id'>$id</option>";
    }
}

额外优化建议

  1. 避免重复连接数据库:login_update.php和functions.php都包含了db.php,可以把两处的include "db.php";改成include_once "db.php";,防止重复创建数据库连接
  2. 开启错误提示排查问题:可以在login_update.php开头添加以下代码,方便后续快速定位隐藏错误:
error_reporting(E_ALL);
ini_set('display_errors', 1);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 07:32:41