AJAX请求根据其id删除列。

时间:2016-06-08 03:50:02

标签: php jquery mysql ajax codeigniter

美好的一天。我正在管理页面,基本上它是一个内容管理系统。我想根据他们的id删除数据。但不幸的是我在htpp请求上遇到了错误。这是错误。

Request URL: admin/ajax_delete
Request Method:POST
Status Code:500 Internal Server Error
Remote Address:144.76.136.165:8181

查看文件:

<a href="#" data-target="" id="delete_tpi" class="edit-content-modal1" data-id="<?php echo $ds_content->id;  ?>" value="<?php echo $ds_content->id; ?>"><span class="glyphicon glyphicon-trash"></span></a>

    $("#delete_tpi").click(function() {
        alert("Are you sure you want to delete?");
        var tpi = $('.datatpi').val(); //package includes
        var did = $('#data-id').val();
        $.ajax({
            url: '<?php echo site_url('admin/ajax_delete'); ?>',
            type: 'POST',
            datatype: 'html',
            data: {id: did, tpi: tpi},
            success:function (b){
                if (b == 'Success') {
                    $('.#data-id').val('');
                    $('.datatpi').val('');
                    location.reload();
                }
            }
        });
    });

    $('body').on('click','.edit-content-modal',function(){
        var id = $(this).attr('data-id');
        $('#data-id').val(id);
    });

控制器文件:

public function ajax_delete(){
    $did = $this->input->post('id');
    $ptpi = $this->input->post('tpi');
    $update = $this->products_model->row_delete($did,$ptpi);
    var_dump($update);
    echo ($update)?'Success':'Fail';
}

模型文件:

function ajax_delete($did,$ptpi){
    $this->db->where('id',$did);
    $this->db->delete('products',$ptpi);
    return $this->db->affected_rows() > 0;
}

2 个答案:

答案 0 :(得分:1)

因为<a></a>元素不期望value标记。您可以使用#delete_tpi

获取所点击的attr()链接的ID
var did = $("#delete_tpi").attr('data-id');

答案 1 :(得分:1)

您对admin / ajax_delete的POST请求返回500内部服务器错误。这是服务器端错误。如果您使用codeigniter,请查看 application / logs / * .log 文件,它们将为您提供有关错误的详细信息。

我认为,你的问题是从模型中调用一个不存在的函数:

在您的控制器中,您有:

$this->products_model->row_delete($did,$ptpi);

但是你的模型包含:

function ajax_delete($did,$ptpi){
    ....
}

您的模型中是否有row_delete()函数?

我再次建议您查看日志文件,因为许多问题都可能导致服务器端错误。