2014-10-17 69 views
2

我試圖做一些事情非常簡單,笨,但不知道爲什麼它如此固執..代碼點火器獲取URL

在我的一個網頁,我檢查用戶是否有權限:

 // Validate our user 
     if ($this->global_model->get_permission() != 'Admin') 
     { 
      redirect('/permissions/index/'.current_url()); 
     } 

在權限控制,我記錄他們來自何處:

$this->global_model->log_data('permission','Invalid Permissions | Referer : ' . $this->uri->segment(3)); 

由於其中具有/的URL,它給我http:爲URI3 。

如何在URL中傳遞此值,但獲得整個值?

回答

2

您可以創建這樣一個解決辦法,以避免分裂的URI:

redirect('/permissions/index/' . base64_encode(current_url())); 

然後在其他用途​​(參數旁邊方法名):

$url = base64_decode($this->uri->segment(3)); 
$this->global_model->log_data('permission','Invalid Permissions | Referer : ' . $url); 
+0

酷,奏效爲了我!我不得不添加'='到'$ config ['permitted_uri_chars']'希望這不是一個大問題。 – SBB 2014-10-17 01:48:01

+0

@SBB哦,是的我忘記了,它包含在CI的一個過濾器中,我很高興這有幫助 – Ghost 2014-10-17 01:48:36