Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取从Laravel刀片服务器到控制器的URL参数_Laravel_Url_Parameter Passing - Fatal编程技术网

获取从Laravel刀片服务器到控制器的URL参数

获取从Laravel刀片服务器到控制器的URL参数,laravel,url,parameter-passing,Laravel,Url,Parameter Passing,我已经为我的刀片提供了一个传递参数的链接 <a href="{!! route('search',['id'=>2]) !!}">{{$value}}</a> 但是我没有从$sid得到任何价值。我该怎么做 对不起,我忘了提到已经有路线设置了 Route::post('search', 'Search@search')->name('search'); 因为链接不是post方法。。这会管用的 <a href="{!! route('search',['

我已经为我的刀片提供了一个传递参数的链接

<a href="{!! route('search',['id'=>2]) !!}">{{$value}}</a>
但是我没有从$sid得到任何价值。我该怎么做

对不起,我忘了提到已经有路线设置了

Route::post('search', 'Search@search')->name('search');

因为链接不是post方法。。这会管用的

<a href="{!! route('search',['id'=>2]) !!}">{{$value}}</a>
在控制器中

public function search(Request $request, $id)
{
    $id = $id;
}

因为链接不是post方法。。这会管用的

<a href="{!! route('search',['id'=>2]) !!}">{{$value}}</a>
在控制器中

public function search(Request $request, $id)
{
    $id = $id;
}

如果您的routes
/youroute/{id}
是这个方案,那么您需要向控制器中的方法传递一个以上的参数,如下所示

public function search(Request $request){
     $sid = $request->get('id');
}
public function search(Request $request,$id){
 $sid = $id;
}

如果您的routes
/youroute/{id}
是这个方案,那么您需要向控制器中的方法传递一个以上的参数,如下所示

public function search(Request $request){
     $sid = $request->get('id');
}
public function search(Request $request,$id){
 $sid = $id;
}

您正在尝试将url绑定
参数
传递给函数。未传递
query
string
get
参数。因此,您需要像这样访问
id

方法1:

控制器:

public function search(Request $request,$id){ $sid = $id; }
Route::get('search/{id}',BlahblahController@search);
public function search(Request $request){
     $sid = $request->get('id');
}
 Route::get('search',BlahblahController@search);
你的路线应该是这样的

路线:

public function search(Request $request,$id){ $sid = $id; }
Route::get('search/{id}',BlahblahController@search);
public function search(Request $request){
     $sid = $request->get('id');
}
 Route::get('search',BlahblahController@search);
方法2:

或者,如果不想将参数绑定到url,只想$\u,则获取参数,如
url/?id=1

你可以这样使用它

public function search(Request $request){
     $sid = $request->get('id');
}
public function search(Request $request,$id){
 $sid = $id;
}
控制器:

public function search(Request $request,$id){ $sid = $id; }
Route::get('search/{id}',BlahblahController@search);
public function search(Request $request){
     $sid = $request->get('id');
}
 Route::get('search',BlahblahController@search);
路线:

public function search(Request $request,$id){ $sid = $id; }
Route::get('search/{id}',BlahblahController@search);
public function search(Request $request){
     $sid = $request->get('id');
}
 Route::get('search',BlahblahController@search);

您正在尝试将url绑定
参数
传递给函数。未传递
query
string
get
参数。因此,您需要像这样访问
id

方法1:

控制器:

public function search(Request $request,$id){ $sid = $id; }
Route::get('search/{id}',BlahblahController@search);
public function search(Request $request){
     $sid = $request->get('id');
}
 Route::get('search',BlahblahController@search);
你的路线应该是这样的

路线:

public function search(Request $request,$id){ $sid = $id; }
Route::get('search/{id}',BlahblahController@search);
public function search(Request $request){
     $sid = $request->get('id');
}
 Route::get('search',BlahblahController@search);
方法2:

或者,如果不想将参数绑定到url,只想$\u,则获取参数,如
url/?id=1

你可以这样使用它

public function search(Request $request){
     $sid = $request->get('id');
}
public function search(Request $request,$id){
 $sid = $id;
}
控制器:

public function search(Request $request,$id){ $sid = $id; }
Route::get('search/{id}',BlahblahController@search);
public function search(Request $request){
     $sid = $request->get('id');
}
 Route::get('search',BlahblahController@search);
路线:

public function search(Request $request,$id){ $sid = $id; }
Route::get('search/{id}',BlahblahController@search);
public function search(Request $request){
     $sid = $request->get('id');
}
 Route::get('search',BlahblahController@search);

我认为您需要像这样使用公共函数搜索(Request$Request,$id){$sid=$id;}您的路由是post方法,但您试图获取一个值作为get方法。看看我的答案,我想你需要像这个公共函数搜索一样(Request$Request,$id){$sid=$id;}你的路由是post方法,但是你试图获取一个值作为get方法。看看我的答案方法2是我的当前代码。。但我不明白为什么控制器上的$sid仍然没有值。您在route::post('search')中使用了post方法Search@search')->name('搜索');将此get方法更改为Route::get('search','Search@search')->name('搜索');方法2是我当前的代码。。但我不明白为什么控制器上的$sid仍然没有值。您在route::post('search')中使用了post方法Search@search')->name('搜索');将此get方法更改为Route::get('search','Search@search')->name('搜索');