使用這個 - > URI->段(3)價值?笨不能在功能
$this->sch_teacher_id = $this->ion_auth->user_by_username($this->uri->segment(3))->row()->id;
我的網址域名:8888/admin_schedule /教師/ VIKA
route.php包含
$route['admin_schedule/teacher/(:any)'] = "admin_schedule/index/$1";
我使用的代碼行功能__construct(),和結果它在另一個控制器功能中使用,因爲3個功能使用此結果。如果我在這個功能中的一個移動這個代碼,並使用$這個 - > URI->段(3)然後我得到不是「VIKA的教訓,但我自己的經驗教訓,所以
public function user_by_username($username = FALSE)
{
$this->trigger_events('user');
//if no id was passed use the current users id
$username || $username = $this->session->userdata('username');
$this->limit(1);
$this->where($this->tables['users'].'.username', $username);
$this->users();
return $this;
}
做工不錯。但是$ this-> uri-> segment(3)如果在user_by_username函數中使用它作爲參數,則不起作用!
下一頁生成的頁面: 控制器admin_schedule具有渲染視圖index.php的函數索引。 並在該視圖中使用JavaScript,調用另一個函數從admin_schedule控制器= get_schedule_db_recurring_events_on_daysweek這樣的方式:
...
{
url: '/admin_schedule/get_schedule_db_recurring_events_on_daysweek/',//"<?echo $data_path?>",
backgroundColor: 'red',
}
和控制器
function get_schedule_db_recurring_events_on_daysweek()
{
$start = date('Y-m-d H:i', $this->input->get('start'));
$end = date('Y-m-d H:i', $this->input->get('end'));
$sch_teacher_id = $this->uri->segment(3); // <--- this doesn't work, but $sch_teacher_id = 111 works perfectly
$result=$this->Schedule_model->get_schedule_recurring_events_on_daysweek($start, $end, $sch_teacher_id);
$count=count($result);
if($count>0){
echo json_encode($result);
}
}
請,有助於理解這個問題。
您是否嘗試將其分配給一個變量並回顯以查看發生了什麼? – rcdmk
是的,當然是:$ username1 =「'」。$ this-> uri-> segment(3)。「'」; \t \t print_r($ username1);這張照片應該是'vika'。 – almix
如果是這樣,您的最後一個問題已經得到解答。這給我們留下了主要問題。你有沒有試圖將這個值與一個變量而不是直接傳遞給該方法(看起來很奇怪,但在某些情況下會引起一些引用問題)。試試吧。 – rcdmk