【发布时间】:2020-02-06 10:59:09
【问题描述】:
从 ajax 获得响应后,我想在 codeigniter 中对控制器进行链接操作。我需要一个来自 ajax 响应的变量来放入控制器的链接,然后在控制器中,我需要操作更新过程。我试过使用 php 链接,但它不起作用。错误显示The URI you submitted has disallowed characters。
这是脚本
$.ajax({
type : "GET",
url : "<?php echo admin_url().'leads/data_status'; ?>",
success : function(response2){
var data2 = JSON.parse(response2);
var html = '';
var a;
for(a=0; a<data2.length; a++)
{
html += '<tr>'+
'<td>'+data2[a].name+'</td>'+
'<td>'+data2[a].company+'</td>'+
'<td><a href="<?php echo admin_url().'leads/trash/status='?>'+data2[a].status+'&id='+data2[a].id+'">Back</a></td>'+
'</tr>';
}
}
})
这是控制器脚本
public function trash(){
$id=$this->input->get('id');
$status=$this->input->get('status');
$data = array(
'status' => $status,
'last_status' => null
);
$this->db->where('id',$id);
$this->db->update(db_prefix() . 'leads', $data);
redirect('admin');
}
你知道如何修复代码吗?
谢谢
【问题讨论】:
-
嗨@N'Bayramberdiyev,我以前试过,但仍然显示同样的错误
-
然后尝试使用
encodeURIComponent()对URL参数进行编码。在您的控制器中使用之前对其进行解码。在 AJAX 调用中,您在哪里输出html变量? -
您可以在您的回复中查看您获得的网址,然后尝试在您的浏览器中运行,然后检查您的网址中的问题...
-
你可以试试这种方式在ajax函数之前分配一个变量 var adminurl = '';像这样在 ajax 中传递变量 url:adminurl + "leads/data_status",
标签: javascript php ajax codeigniter