2016-03-29 74 views
0

我正在使用codeigniter來開發一個web應用程序CodeIgniter URL結構參數

但我在URL結構中遇到了一些問題。

我需要有一個URL結構如下圖所示

http://example.com/controller/function/parameters

這意味着我有類似下面

http://183.83.52.151/ftp/deploy/a72520c9987ca4b4255c10db9d76d3cb

在一個網址URL字符串a72520c9987ca4b4255c10db9d76d3cb是參數i想要得到它在我的PHP代碼,但它把這作爲一個整體的URL並返回我404頁

我該怎麼做到這一點?

我的htaccess看起來像下面

Options +FollowSymLinks 
Options -Indexes 
DirectoryIndex index.php 
RewriteEngine on 
RewriteCond $1 !^(index\.php|assets|images|css|js|install|robots\.txt|favicon\.ico) 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?/$1 [l,QSA] 

我的代碼看起來像下面笨的

class ftp extends CI_Controller{ public function deploy(){ var_dump($_REQUEST); exit; } }

+0

你可以命名爲該類命名爲部署FTP和方法控制? –

+0

發佈您的代碼和文件結構。 – Dray

+0

@AvinashSinha 是的,我有一個ftp作爲方法和部署功能 –

回答

1

使用這個,因爲它

class Ftp extends CI_Controller{ 
     public function deploy($id){ 
      var_dump($id); exit; 
     } 
    } 

,並命名該文件是Ftp.php

+0

謝謝,但我有一個問題。我正在使用自定義控制器擴展CI_Controller來限制對受保護頁面(用戶登錄系統)的訪問,但我需要允許某些頁面無需登錄即可訪問。 這裏是我的自定義控制器代碼pastebin.com/JwDNV3Xc –

+0

你得到這個功能的實際問題 –

+0

你也可以用其他方法做這些事情不需要擴展基類 –

0

使用URI類

$data = $this->uri->segment(n); // in your case, it is $this->uri->segment(3); 
echo $data; 

見鏈接:URI Class

+0

這是非常陳舊和過時的用戶指南鏈接,您可以在這裏找到新版本和舊版本的文檔現在http://www.codeigniter/docs – user4419336

+0

@ wolfgang1983 ohk ..謝謝。 –

+0

ellislab不再處理codeigniter,但由於某些原因,他們仍然有用戶指南。 – user4419336