首页 > 解决方案 > 如何在 Codeigniter 中使用 AJAX 和 PHP 从 MySQL 数据库中删除记录

问题描述

我想使用 AJAX 从 MySQL 数据库表中删除记录。我已经用 PHP 完成了它并且工作正常。但是我无法通过 AJAX 完成它。

AJAX

$(document).ready(function() {
    $(".confirm").click(function() {
        var bid = $(this).closest("div.box2").find('input[name="dbid"]').val();
        var dataString = 'id=' + bid;
        $.ajax({
            type: "POST",
            url: "<?php echo site_url('user/delete_article')?>",
            data: dataString,
            cache: false,
            success: function() {

                $.alert('Confirmed!');
            }
        });
    });
}); 

PHP

public function delete_article($id){
  $data['success']='';
  $data['error']='';
  include_once ('query/user_query.php');  
  $this->db->where('bid', $id);
  $data['countEarticle'] = $this->db->count_all_results('blog');
  if($data['countEarticle'] >= 1){

      $this->db->where('bid',$id);
      $this->db->delete('blog');

  }
  if($data['countEarticle'] <= 0){

  }          
}

HTML

<div class="box-footer box-comments box2" style="display: block;">
    <input type="hidden" name="dbid" value="<?php echo $draftfull['bid']?>">
    <p>
        <btn class="btn btn-azure btn-sm confirm"><i class="fa fa-trash-o"></i>Delete Article</btn>
    </p>
</div>

我需要你的帮助。我究竟做错了什么?

标签: phpajaxcodeigniter

解决方案


试试这个代码: -

public function delete_article(){
    $id=$this->input->post('bid');
    $data['success']='';
    $data['error']='';
    include_once ('query/user_query.php');

    $this->db->where('bid', $id);
    $data['countEarticle'] = $this->db->count_all_results('blog');
    if($data['countEarticle'] >= 1){

        $this->db->where('bid',$id);
        $this->db->delete('blog');

    }
    if($data['countEarticle'] <= 0){

    }          
   }

推荐阅读