【发布时间】:2013-03-08 10:19:33
【问题描述】:
我遇到了一种情况,希望能得到一些帮助。
我有一个名为 Site 的控制器,其功能如下:
function getID(){
$id_data = $this->uri->segment(3);
$name = $this -> session -> userdata('name');
echo json_encode($this -> getID_model -> getID($id_data,$name ));
}
我的网址如下所示
http://myapp.com/index.php?/site/user/96
当链接打开时,用户只有在用户函数运行了我的检查后才能看到他的页面。这就是为什么我不能删除或更改 User 函数的原因,因为它需要读取 URI 数据并且需要与我的 getID 函数分开
这就是我的问题所在。
我需要调用站点控制器中的 getID 函数,它需要第三个 URI id 号。
下面是我的 JQuery
var fullurl = $('#hiddenurl').val() + 'index.php?/site/getID/';
$.getJSON(fullurl, function(json) {
$.each(json, function(i,d) {
//do my output stuff.
});
$('#_description').append(output);
});
这不起作用,因为控制器需要第三个 URI 段。
谁能告诉我应该如何将此段添加到网址中?我应该使用某种 JS 解析吗?
谢谢。
【问题讨论】:
-
直到今天我还是不明白为什么人们尝试使用 uri->segment 功能而不是可读功能。
-
function getID($id){ echo json_encode($this->getID_model->getID($id,$this->session->userdata('name'))); }
-
@skrilled 所以将参数传递给 getID 函数?然后呢?你能解释一下吗?
-
在控制器中: public function user($userid = false) { if($userid) $data = $this->getID_model->getID($userid,$this->session->userdata( '姓名')); }
-
是的,您应该将参数传递给 getID 函数。
标签: javascript jquery codeigniter