使用CI

时间:2020-09-10 09:40:00

标签: javascript php html ajax codeigniter

我尝试从数据库中获取数据并将其放在表中,我也使用实时搜索来过滤数据。现在我想尝试删除带有按钮的某行,我在每一行中都设置按钮,因此当我按下删除按钮时,我的表和数据库中都有1行。

但是控制台无法正常工作

[HTTP / 1.1 500内部服务器错误70ms]

我不知道出了什么问题,请多多帮助。 这是我的代码,也许可以帮助您找到我的错误

这是我的代码。

此处是控制器

function fetchData(){
        $output = '';
        $query = '';
        $this->load->model('pool_method');
        if($this->input->post('query'))
        {
            $query = $this->input->post('query');
        }
        $data = $this->pool_method->searchData($query);
        $json = array();
        $output .= '
        <div class="table-responsive">
            <table class="table table-bordered table-striped">
            <tr>
            <th>Nama Barang</th>
            <th>Keterangan</th>
            <th>Tanggal Pembelian</th>
            <th>QTY</th>
            <th>Harga</th>
            <th>Jumlah</th>
            </tr>
        ';
        if($data->num_rows() > 0)
        {
            foreach($data->result() as $row)
            {               
                $output .= '
                <tr>
                <td>'.$row->nama_barang.'</td>
                <td>'.$row->keterangan.'</td>
                <td>'.$row->tanggal_pembelian.'</td>
                <td>'.$row->qty.'</td>
                <td>'.$row->harga.'</td>
                <td>'.$row->jumlah.'</td>
                <td>'.'<button type="button" name="delete" id="'.$row->id_pembelian_pool.'" class="btn btn-danger btn-xs delete">Delete</button>'.'</td>
                </tr>
                ';
                
            }
        }
        else
        {
            $output .= '<tr>
                <td colspan="5">No Data Found</td>
                </tr>';
        }
            $output .= '</table>';
            echo $output;
    }
    function deleteData()
    {
             $this->pool_method->delete_singel_row($_POST["id_pembelian_pool"]);
        echo 'Data Deleted';
    }

模型

function delete_single_row($id_pembelian_pool)
    {
        $this->db->where('id_pembelian_pool',$id_pembelian_pool);
        $this->db->delete('pembelian_pool');
    }

JS

<script>
    $(document).on('click', '.delete', function(){  
       var id_pembelian_pool = $(this).attr("id_pembelian_pool");  
       if(confirm("Are you sure you want to delete this?"))  
       {  
            $.ajax({  
                 url:"<?php echo base_url(); ?>Manual_co/deleteData",  
                 method:"POST",  
                 data:{id_pembelian_pool:id_pembelian_pool},  
                 success:function(data)  
                 {  
                      alert(data);  
                      dataTable.ajax.reload();  
                 }  
            });  
       }  
       else  
       {  
            return false;       
       }  
  });  
</script>

感谢您的帮助,对我而言,您的帮助非常重要

1 个答案:

答案 0 :(得分:1)

我认为您要从中获取密钥的属性名称犯了一些错误。该属性称为id,因此请更改此行

var id_pembelian_pool = $(this).attr("id_pembelian_pool");  

收件人

var id_pembelian_pool = $(this).attr("id");