无法编辑以 MVC 模式放置的数据库

Unable to edit the database with placed in a MVC pattern

提问人:Kevin 提问时间:10/20/2023 最后编辑:Kevin 更新时间:10/20/2023 访问量:15

问:

我有一个带有控制器.php的控制器文件夹;带有数据库管理器.php、表用户.php和页脚.html的模型文件夹。控制器 .php 具有 db-manager include,db-manager 包含一个连接到数据库的函数和一个内部带有 sql 更新的函数。

数据库管理器.php

 public function change_password($id, $password)
    {
        $sql = "UPDATE user SET password = :password WHERE id = :id;";
        $stmt = $this->db->prepare($sql);
        $stmt->bindParam(":password", $password);
        $stmt->bindParam(":id", $id);
        $stmt->execute();
    }

控制器 .php

require_once "../Model/account-db-manager.php";
if (isset($_POST['userId']) && isset($_POST['changePassword'])) {
    $userId = $_POST['userId'];
    $password = $_POST['changePassword'];

    $database->change_password($userId, $password);
}

我一直在尝试做的是必须单击带有编辑 btn 的行并打开一个允许我输入密码的模式,一旦我提交,它将更新数据库。 这是我的jquery:

 $(document).ready(function () {
        $('.editbtn').click(function () {
            var userId = $(this).attr('id');
            $('#userId').val(userId);
        });

        $('#changePassForm').submit(function (event) {
            event.preventDefault(); 
            var newPassword = $('#changePassword').val();

            var userId = $('#userId').val();

            $.ajax({
                type: 'POST',
                url: 'Controller/account-controller.php', 
                data: {
                    userId: userId,
                    changePassword: newPassword
                },
                success: function (response) {
                    location.reload();
                }
            });
        });
    });

当我尝试代码时,没有任何更新。我希望代码更新尝试制作 MVC 模式 php

javascript php jquery mysql ajax

评论


答: 暂无答案