Php 无法使用$.ajax()函数从数据库中删除记录

Php 无法使用$.ajax()函数从数据库中删除记录,php,jquery,Php,Jquery,我有记录清单。我在每条记录上都有删除按钮,我正在使用$.ajax()函数删除记录。但当我单击delete按钮时,它不会从数据库中删除记录,当我警告数据时,它会输出整个html页面。请帮帮我 html代码 <tbody> <tr class="gradeX odd"> <td class="sorting_1">2</td> <td class=" ">test</td>

我有记录清单。我在每条记录上都有删除按钮,我正在使用
$.ajax()
函数删除记录。但当我单击delete按钮时,它不会从数据库中删除记录,当我警告数据时,它会输出整个html页面。请帮帮我

html代码

<tbody>
      <tr class="gradeX odd">
        <td class="sorting_1">2</td>
        <td class=" ">test</td>
        <td class=" ">test</td>
        <td class="center ">0</td>
        <td class="center ">Active</td>
        <td class=" "><button type="button" class="btn btn-default btn-circle" name="editRecord"><i class="fa fa-pencil-square-o"></i></button>
          <button type="button" class="btn btn-danger btn-default btn-circle" id="2" name="deleteRecord"><i class="fa fa-times"></i></button></td>
      </tr>
      <tr class="gradeX even">
        <td class="sorting_1">3</td>
        <td class=" ">sarees</td>
        <td class=" ">contains sarres</td>
        <td cl="center ">1</td>
        <td class="center ">Active</td>
        <td class=" "><button type="button" class="btn btn-default btn-circle" name="editRecord"><i class="fa fa-pencil-square-o"></i></button>
          <button type="button" class="btn btn-danger btn-default btn-circle" id="3" name="deleteRecord"><i class="fa fa-times"></i></button></td>
      </tr>

    </tbody>
 $mode = $_GET['mode'];

 if($mode!='add_category' || $_GET['mode']!= "delete_category")
 {
     header('location:dashboard.php');
     die;

  }


    if($mode=='delete_category')
    {    

       $id=$_GET['id'];
       $q=$db->query("DELETE FROM db_category WHERE category_id='".$id."'");
       if($q){ echo "yes";}
       else{ echo "no";}

    }
php代码

<tbody>
      <tr class="gradeX odd">
        <td class="sorting_1">2</td>
        <td class=" ">test</td>
        <td class=" ">test</td>
        <td class="center ">0</td>
        <td class="center ">Active</td>
        <td class=" "><button type="button" class="btn btn-default btn-circle" name="editRecord"><i class="fa fa-pencil-square-o"></i></button>
          <button type="button" class="btn btn-danger btn-default btn-circle" id="2" name="deleteRecord"><i class="fa fa-times"></i></button></td>
      </tr>
      <tr class="gradeX even">
        <td class="sorting_1">3</td>
        <td class=" ">sarees</td>
        <td class=" ">contains sarres</td>
        <td cl="center ">1</td>
        <td class="center ">Active</td>
        <td class=" "><button type="button" class="btn btn-default btn-circle" name="editRecord"><i class="fa fa-pencil-square-o"></i></button>
          <button type="button" class="btn btn-danger btn-default btn-circle" id="3" name="deleteRecord"><i class="fa fa-times"></i></button></td>
      </tr>

    </tbody>
 $mode = $_GET['mode'];

 if($mode!='add_category' || $_GET['mode']!= "delete_category")
 {
     header('location:dashboard.php');
     die;

  }


    if($mode=='delete_category')
    {    

       $id=$_GET['id'];
       $q=$db->query("DELETE FROM db_category WHERE category_id='".$id."'");
       if($q){ echo "yes";}
       else{ echo "no";}

    }
在javascript中发送“url:”admin_operation.php?mode=delete_category&id=“+id”。 而且,在php脚本中,您有一个重写头并退出脚本的条件

if($mode!='add_category' || $_GET['mode']!= "**delete_category**")
{
    header('location:dashboard.php');
    die;
}
下一段代码

if($mode=='delete_category')
{
    // ...
}   
永远也达不到。
希望这能帮助您解决问题。

您在这里做的事情非常危险。首先,任何人都可以通过该URL删除内容,其次,你完全可以接受SQL注入。@marty但是使用post方法,我得到了相同的错误。我该怎么办?
POST
不会阻止这两件事中的任何一件。让我们忽略这个脚本非常危险的事实,我认为问题是因为它在寻找字符串category_id(category_id=''.'$id.''),而它应该寻找整数(category_id=“.id.”)。@user3288891,不确定是什么错误,但是,为了保护-在查询之前,在.php文件的开头,检查admin是否已登录,并在将var id插入query.tnx之前检查它。。它应该是&&而不是| | if($mode!='add_category'&&&|$\u GET['mode']!=“delete_category”)