php - 无法使用 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
但它也不起作用。
解决方案
试试这个来打印你的变量。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);
}
推荐阅读
- javascript - 如何在 chart.js 中更改 X 轴间隔
- hadoop - java.io.IOException:来自 Hadoop 数据节点上 inputStream 的过早 EOF
- ios - 非公共 API 使用
- python - 如何在python中使用tensorflow模型
- module - Kentico,全球事件未触发
- excel - 如何在谷歌脚本(marco excel)中查找数组中存在的元素数量
- python - Python追加到列表覆盖列表中的所有其他元素
- linear-programming - 线性规划线去除最优解
- javascript - 允许小数点后两位数
- image - Javafx GridPane ColumnConstraints 导致在需要重叠的地方进行裁剪