jquery - 使用jquery和ajax从数据库中删除数据

标签 jquery mysql ajax

我有来自数据库的数据,并且使用数据表显示了它。现在我想做的是删除一条记录,但没有成功返回,而是给出了错误。

  datatable.on('click','.delete-row',function(){
       tr = $(this).closest('tr'),
            data = datatable.row(tr).data();

        var result = confirm('Are you sure you want to delete this record?')
        if(result){
        $.ajax({
          url:'../ajax/delete_users.php',
          dataType:'JSON',
          data: {id: data.users_id},

          success: function(result){
            console.log(result);
          },
          error: function(status){
            console.log(status.responseText);

          }
        });
      }
    });

这是我的delete.php

if (isset($_POST['id'])) {
     $id = $_POST['id'];
     $data = $users->deleteUsers($id);
      echo json_encode($data);

}

查询就像这样..

public function deleteUsers($id)
    {
        $sql = "DELETE FROM tbl_users WHERE users_id = '$id'";
        $update = $this->dbh->prepare($sql);
        $update->execute();
        return $update->rowCount() ? true : false;
    }

最佳答案

您没有在 ajax 请求上设置方法,因此它是使用 GET 发送的,但您尝试从 POST 读取。尝试将方法:“POST”添加到请求中。

还在查询中使用 $id 的绑定(bind)参数。我可以通过发送 id = 1' 或 1=1 作为用户 ID 来删除所有用户

关于jquery - 使用jquery和ajax从数据库中删除数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43842475/

相关文章:

jquery - 获取在g:select标记中选择的值

mysql - 在第二个表中加入具有最高 ID 的两个表

MySQL按查询进行分组,不使用索引,滞后于使用文件排序

javascript - 将一个方法关联到 JSON 对象列表中的每个项目

jquery - "before and after"交互式图像 mask

javascript - 检查 mousedown 和 mouseup 事件是否同时触发

javascript - 多个 jQuery 切换未正确更改

mysql - 跟踪数据库结构中所做的更改

c# - 对 ASP.NET WebMethod 的 jQuery AJAX 调用

php数据表数组结果