【问题标题】:JQuery / AJAX delete item from databaseJQuery / AJAX 从数据库中删除项目
【发布时间】:2016-03-19 18:49:03
【问题描述】:

出于学习目的,我正在尝试在 jquery/ajax/php 中创建 CRUD。 但我无法弄清楚我在删除部分做错了什么。

我的目标是在不刷新页面的情况下从数据库中删除一条记录。

Ajax 函数:

    $(document).on('click', '.deleteOrder', function(e){
    var id = $(this).attr('id');
    console.log('Clicked order: ' + id);

    $.ajax({
        type:   'POST',
        url:    'orders/deleteorder/',
        data:   {
            orderId: id
        },
        success: function(data){
            updateOrder(e);
        },
        error: function(){
            console.log('error');
        }
    });
});

php函数:

    public function deleteOrder(){
    $orderId = $_POST['id'];
    $count=$this->connection->prepare("DELETE FROM orders WHERE orderNumber = :number");
    $count->bindParam(":number",$orderId,PDO::PARAM_INT);
    $count->execute();
    echo 'Finished order ' . $orderId;
}

【问题讨论】:

  • print_r() $this->Connection 在准备语句之后。应该给你查询。您是否还检查了函数 deleteOrder 是否获得正确的 $orderId。
  • @bIgBoY 出于某种原因,如果我想使用 echo 或打印 r,它不会显示在页面上。所以我无法检查它是否在 php 中获取 ID
  • 检查 xhr 请求的网络选项卡

标签: javascript php jquery ajax


【解决方案1】:

首先在浏览器的“网络”选项卡中检查是否通过ajax调用删除函数(在浏览器中单击F12按钮时会看到这个)

【讨论】:

    【解决方案2】:

    你没有调用 deleteOrder 函数。

    【讨论】:

    • 这并没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论 - 您可以随时评论自己的帖子,一旦您有足够的reputation,您就可以comment on any post。 - From Review
    • 我确实在“url: 'orders/deleteorder/'”中调用了该函数,但这与@Tarion 所说的这个问题无关。
    • if (isset(orderId)){ deleteOrder(); } //在你的ajax文件顶部添加这个
    猜你喜欢
    • 2021-10-15
    • 1970-01-01
    • 2013-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-07
    相关资源
    最近更新 更多