PHP AJAX动态删除数据

PHP AJAX动态删除数据,php,ajax,pdo,Php,Ajax,Pdo,我试图使用AJAX通过前端站点从数据库中动态删除一条记录,我有代码,但当我单击delete按钮时,什么都没有发生,连接到数据库,我只是在代码中找不到错误,所有的代码文件都相互链接 我要从中删除记录的表称为recipes HTML 首先,您的问题是使用错误,您正在准备查询,但同时您正在直接向它传递一个值 变, $query = "DELETE FROM recipes WHERE itemid= $recipe_data['recipe_id'];"; 对, 第二,如果您正在使用这些属性,请考虑

我试图使用AJAX通过前端站点从数据库中动态删除一条记录,我有代码,但当我单击delete按钮时,什么都没有发生,连接到数据库,我只是在代码中找不到错误,所有的代码文件都相互链接

我要从中删除记录的表称为recipes

HTML

首先,您的问题是使用错误,您正在准备查询,但同时您正在直接向它传递一个值

变,

$query = "DELETE FROM recipes WHERE itemid= $recipe_data['recipe_id'];";
对,

第二,如果您正在使用这些属性,请考虑使用各自的函数。

第三,当您执行AJAX请求时,如果请求不正确,请打开浏览器控制台并检查该请求的响应。这通常会为你指明正确的方向

第四,你的按钮HTML格式不正确,看看你的按钮代码

<button type="button" id="deletebutton" class="btn btn-outline-danger" input type="submit" name="recipe_delete" data-id="<?php echo $recipe['recipe_id']; ?>">

注意你有一个按钮/输入组合吗?选择一个,您不需要两者都有。

您是否检查了控制台是否有任何错误?您正在向查询传递一个值并准备?那是错误的。您使用的命名参数错误。$query看起来不正确。是否应该有:itemid以便您以后可以绑定它?@Script47当我单击“删除”按钮时,它为空。如果您要使用数据-*属性,您也可以使用.data函数而不是.attr。嘿,@Script47,我尝试了更改查询,但问题仍然存在,当我单击“删除”按钮时,什么都没有发生,我打开google chrome控制台,进入网络,看到php文件中没有数据。?嘿,我只是删除了html代码中的输入并保留了按钮,同样的问题仍然存在。@HasnaatKhan你不能删除它。确保代码中没有任何依赖项。继续检查控制台。是的,控制台不断为删除ajax文件输出结果:@Script47
    $('#recipecards2').on('click', '#deletebutton', function() {
    // var that = this;
    var itemid = $('#recipecards').attr('data-id');

    var request = $.ajax({
        url: "ajax/removeItemsFromList.php",
        type: "post",
        data: { itemid : itemid}
    });

    // If we're successfull!
    request.done(function (response, textStatus, jqXHR){
        $('#recipecards2 > #recipecards[data-id="'+response+'"] ').remove();
    });
});
$query = "DELETE FROM recipes WHERE itemid= $recipe_data['recipe_id'];";
$query = "DELETE FROM recipes WHERE itemid = :itemid;";
<button type="button" id="deletebutton" class="btn btn-outline-danger" input type="submit" name="recipe_delete" data-id="<?php echo $recipe['recipe_id']; ?>">