Php 代码点火器使用html编码字符重新写入get参数
嗨,我是codeigniter的新手,我尝试简单地将GET变量传递给控制器函数,并让控制器根据GET变量字符串搜索数据库。我正在使用ajax获取返回的带有结果的视图,并将其显示在页面上 我的问题是,我有一个链接,onclick将在其中执行这个javascript,比如Php 代码点火器使用html编码字符重新写入get参数,php,codeigniter,Php,Codeigniter,嗨,我是codeigniter的新手,我尝试简单地将GET变量传递给控制器函数,并让控制器根据GET变量字符串搜索数据库。我正在使用ajax获取返回的带有结果的视图,并将其显示在页面上 我的问题是,我有一个链接,onclick将在其中执行这个javascript,比如 function fetchview(query_id2){ $.ajax({ url:'getProjectDetails/'+query_id2, dataType: "html",
function fetchview(query_id2){
$.ajax({
url:'getProjectDetails/'+query_id2,
dataType: "html",
success: function(str){
$("#content").html(str);
}
});
}
链接本身是
onclick="('query_id')";
问题是codeigniter通过将任何+甚至%20替换为“破折号”字符“-”,自动将查询_id2传递给“getProjectDetails”函数
这是一个问题,因为我需要在没有任何破折号的情况下查询数据库
有什么办法可以解决这个问题吗
我已经尝试在链接中对“查询id”进行url编码。。。然后,在“getProjectDetails”中进行url解码——这不起作用,因为codeigniter仍然用“getProjectDetails”中的破折号替换%20个字符。我看到您试图将字符串或某个变量传递给CI控制器,获取数据库结果并返回数据 若您试图通过jquery将查询发送到php,请使用函数,通过POST发送数据。另外,用铅笔把它绑起来 例如:
$("#element").click(function() {
var url = "<?=site_url("getProjectDetails")?>";
var query_id = $("#query_id").val();
$.post(url, { 'query_id' : query_id }, function(data) {
$("#content").html(data);
}
});
$this->input->post('query_id');