首页 > 解决方案 > 如何删除表中的数据

问题描述

例子

我将数据首先存储在临时表中。

身份证温度 | 类型 | 身份服务

我想删除附加表中每个 id 的数据,但是在删除数据时,数据不会被擦除

控制器

public function delete_append($id){
  $this->M_outbound->delete_db_temp($id);
  redirect ('backend/outbound');
 }

模型

public function delete_db_temp($id){
return $this->db->delete('temporary', array('id_tmp' => $id));
}

形式

$(".btntmp").click(function(){ //input append
      var id_service       = $("input[name='id_service']").val(); //tracking_number
      var id_inbound_detail = $("input[name='id_inbound_detail']").val();
      var kd_outbound      = $("input[name='kd_outbound']").val();
      var tracking_number  = $("input[name='tracking_number']").val();
      var nama_cs          = $("input[name='nama_cs']").val();
      var tgl_outbound     = $("input[name='tgl_outbound']").val();
      var id_cs            = $("#customers").val();
      var nama_kecamatan   = $("input[name='nama_kecamatan']").val();

      $.ajax({
         url: '<?php echo base_url();?>backend/outbound/add_tmp', //add data
         type: 'POST',
         dataType: 'JSON',
         data: {
                id_service: id_service, 
                id_inbound_detail: id_inbound_detail, 
                kd_outbound: kd_outbound, 
                tracking_number: tracking_number, 
                nama_cs: nama_cs, 
                id_cs: id_cs, 
                kd_outbound: kd_outbound, 
                tgl_outbound: tgl_outbound, 
                nama_kecamatan: nama_kecamatan,
                },
         error: function() {
         },
         success: function(data) {
          if(data.sukses==false){
            alert(data.pesan);
          }else{
            $("tbody").append("<tr><td>"+nama_cs+"</td><td>"+tracking_number+"</td><td>"+kd_outbound+"</td><td>"+tgl_outbound+"</td><td>"+nama_kecamatan+"</td><td><button class='btn btn-danger btn-xs btn-delete'>Delete</button></td></tr>"); 
          }
        }
    });
});


$("#tbody").on("click", ".btn-delete", function(){ 
$(this).parents("tr").remove(); //button not delete in database

});

标签: jquerycodeigniter

解决方案


使用提供的代码,您只是通过单击红色按钮隐藏“已删除”行,但您没有调用 PHP 函数。

在删除按钮的单击事件中,您应该通过 AJAX 或类似的方式调用您的 PHP 代码(未经测试):

$("#tbody").on("click", ".btn-delete", function(){ 
    $.ajax({
        url: "<?php echo base_url();?>backend/outbound/delete_tmp",
        success: function(result) {
            $(this).parents("tr").remove();
        }
    });
});

推荐阅读