首页 > 解决方案 > 无法使用 ajax 将值发布到 codeigniter 控制器

问题描述

所以我想通过使用ajax来做一个更新功能。我有两个参数,我想将参数传递给我的 CI 控制器。但我遇到了一个错误,我认为这是没有传递给控制器​​的参数。

这是我的ajax函数:

function suspend(tipe, id){
    var postData = {
        'tipe' : tipe,
        'id' : id
    };
    $.ajax({
        type: "POST",
        url: "<?=site_url("amas/c_agency/suspend_agency/");?>",
        data: postData,
        success: function(data){
            if(tipe == 0){
                $("#suspend").attr("onclick","suspend(1,"+id+")");
            }else{
                $("#suspend").attr("onclick","suspend(0,"+id+")");
            }
            alertify.success("Agency berhasil disuspend!");
        } ,
        error: function() {
            alertify.error("Gagal suspend agency!");
        }
    });
}

这是我的codeigniter控制器:

function suspend_agency(){
        $session['hasil'] = $this->session->userdata('logged_in');
        $login_id = $session['hasil']->login_id;

        $tipe = $this->input->post('tipe');
        $id = $this->input->post('id');

        if($tipe == 0){
            $id = array(
                'id_agency' => $id
            );
            $data = array(
                'is_suspend' => '1',
                'suspend_by' => $login_id,
                'suspend_at' => date("Y-m-d")
            );
        }else{
            $id = array(
                'id_agency' => $id
            );
            $data = array(
                'is_suspend' => '0'
            );
        }

        $result = $this->m_agency->suspend_agency($id, $data);
    }

我试图将 ajax 数据更改为数据:"tipe="+tipe+"&id="+id但它也不起作用。

标签: phpjqueryajaxcodeignitercodeigniter-3

解决方案


试试这个来打印你的变量。echo json_encode($result);

function suspend_agency(){
    $session['hasil'] = $this->session->userdata('logged_in');
    $login_id = $session['hasil']->login_id;

    $tipe = $this->input->post('tipe');
    $id = $this->input->post('id');

    if($tipe == 0){
        $id = array(
            'id_agency' => $id
        );
        $data = array(
            'is_suspend' => '1',
            'suspend_by' => $login_id,
            'suspend_at' => date("Y-m-d")
        );
    }else{
        $id = array(
            'id_agency' => $id
        );
        $data = array(
            'is_suspend' => '0'
        );
    }

    $result = $this->m_agency->suspend_agency($id, $data);
    echo json_encode($result);
}

推荐阅读