Laravel 5.1 GET url参数键不正确传递给控制器​​

问题描述:

我从URL获取GET参数时遇到问题。Laravel 5.1 GET url参数键不正确传递给控制器​​

如果我有e.g

http://domain.tld/route?page=2 

,比控制器I DD数据从

dd(Input::all()); 

Laravel换来的是

array:1 [▼ 
    "//route?page" => "2" 
] 

但应该

array:1 [▼ 
    "page" => "2" 
] 

5.0上的Laravel 5.1存在问题,一切正常。

途径代码是

Route::get('/klub', ['as' => 'teamInfo', 'uses' => 'Game\Team\[email protected]']); 

位指示代码

final public function index(Request $request) 
    { 
     $userTeam = UserCache::get('team'); 
     if ($userTeam->id > 0) 
      return view('game.team.info')->with(['userTeam' => $userTeam]); 
     else { 
      //this is executing in my case 
      $proposals = Teams::proposals()->paginate(1); 
      return view('game.team.empty', ['teamLimits' => conf('team.php'), 'userTeam' => $userTeam, 'proposals' => $proposals]); 
     } 
    } 

var_dump($_SERVER['QUERY_STRING']); 
string(13) "//klub?page=2" 

var_dump($_SERVER['REQUEST_URI']); 
string(12) "/klub?page=2" 
+0

任何理由不使用Request对象? '$请求 - >输入( '页')'? – Pitchinnate

+0

@Pitchinnate它返回相同 – rafwlaz

+1

需要看到更多的代码,然后,像你的路由器和功能的控制器可能的帮助。 – Pitchinnate

有东西在你使用任何服务器损坏(NGINX或Apache?)。服务器变量通过服务器引擎传递给PHP,PHP只能解析给出的内容。

如果你使用Apache或NGINX可能被错误地转发该值你可能有一个坏的URL重写你的.htaccessQUERY_STRING应该是page=2

+0

我加var_dumps – rafwlaz

+0

@diaraf(编辑我的答案) –

+0

好的,这是我已经添加了什么 “try_files $ URI $ URI//index.php?$query_string;” –

@dboskovic问题是与nginx配置,错误的变量传递给CGI,我现在修复它,所有的作品很好。

感谢这么多的帮助和