2012-03-21 89 views
0

我爲我的rest-webservice使用Tonic Framework(https://github.com/peej/tonic)。無法訪問GET參數

的getUser:

/** 
    * This class defines an example resource that is wired into the URI /example (/{id})? 
    * @namespace Test 
    * @uri /nff/user/{uid} 
    */ 
    require_once('dbmodel.php'); 
    require_once('error.php'); 
    require_once('user.php'); 
    class GetUserController extends Resource { 


     function get($request,$uid) { 
     ..... 
} 

我的問題是,我無法訪問$_GET參數。

我想問題可能在.htaccess

<IfModule mod_rewrite.c> 
    RewriteEngine On 

    #exclude 
    RewriteRule ^img/ - [L] 
    RewriteRule ^verify.php - [L] 

    RewriteCond %{REQUEST_URI} !dispatch\.php$ 
    #RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule .* dispatch.php [L,QSA] 
</IfModule> 

請幫

+0

當您嘗試訪問'$ _GET'會發生什麼? – 2012-03-21 08:37:35

+0

首先查看print_r($ _ GET)是否有內容,然後從那裏開始工作。 – 2012-03-21 08:38:13

+0

$ _GET:數組 ( [dispatch_php] => [重定向:/ dispatch_php/30] => [NFF/user_php/30] => ) – user547995 2012-03-21 09:13:09

回答

1

你的最後一個重寫規則重寫一切,而不需要附加的GET參數dispatch.php。你必須添加規則與參數和改寫爲dispatch.php?$ 1

RewriteRule ^[^\?]*\?(.*)$ dispatch.php?$1 [L,QSA] 
RewriteRule .* dispatch.php [L,QSA] 
+0

我複製它,但是當我打電話給我的web服務和print_r的( ?$ _GET),參數不通過 – user547995 2012-03-21 09:12:38

+0

對不起,我忘了轉義字符爲'' – flo 2012-03-21 09:41:42

+0

現在我有: RewriteEngine敘述在 \t \t #exclude \t重寫規則^ IMG/- [ L] \t RewriteRule^verify.php - [L] \t #RewriteCond%{REQUES T_URI}!dispatch \ .php $ \t RewriteRule^[^ \?] * \?(。*)$ dispatch.php?$ 1 [L,QSA] #RewriteCond%{REQUEST_FILENAME}!-f RewriteRule。* dispatch .php [L,QSA] 它不起作用 – user547995 2012-03-21 10:53:45