在Mysql中更新数据的问题(致命错误:未捕获错误:调用成员函数)

时间:2018-05-11 16:00:36

标签: php mysql sql

我在尝试更新mysql表中的信息时遇到问题。我使用UPDATE语句之前没有发生过这个问题。 我将向您展示我所拥有的代码以及导致的错误:

MODEL:

class Pay {
    public function __construct() {}

    public function Users ($id, $idem, $c_user, $num_pay, $total_pay) {

        require_once "../../model/Conexion.php";

        global $conexion;

        $update = "UPDATE Users SET Users = $c_user, num_pay = $num_pay, total_pay = $total_pay WHERE id_user = $id AND idem = $idem";

        $query = $conexion->query($update);
        return $query;

    }
}

控制器:

$obj = new Pay();

$resp = $obj->UsersCount(5, 5);

$cant = $resp->fetch_object();

$Cant = 1 + $cant->Users;

$num_pay = $cant->num_pay + 1;

$total_pay = $cant->total_pay + 75;

$UserPlus = $obj->Users(5, 5, $Cant, 
$num_pay, $total_pay);

结果:

  

致命错误:未捕获错误:在C:\ xampp \ htdocs \ solventas \ dashboard \ Modelos \ Pay.php中调用null上的成员函数query():130堆栈跟踪:#0 C:\ xampp \ htdocs \ solventas \ dashboard \ Modelos \ PaY.php(203):Pay->用户(5,5,3,2,150.9)#1 {main}抛出C:\ xampp \ htdocs \ solventas \ dashboard \ Modelos \ Pay第130行的.php

尝试执行UPDATE时出现错误,并且未完成更新。我已经多次检查了代码而没有检查。 UsersCount函数如果它提取结果但是Users函数是有问题的,我不知道为什么,在此之前没有发生在我身上。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

您的全局变量$conexion未初始化。我还建议使用Singleton进行数据库连接。