我正在尝试用 laravel 和我正在使用分页来显示搜索结果。当我点击搜索按钮时,它可以工作但是当我点击分页的下一页时,搜索表单的所有值都消失了,搜索没有结果有没有人可以帮忙?
路线.php
Route::get('search', 'searchController@index');//return search view
Route::post('misearch', 'searchController@search');// return result
Route::resource('misearch', 'searchController@search');// for pagination
搜索控制器.php
$results = Mod_ads::where(function($query){
$ins_brand = Input::has('ins_brand')? Input::get('ins_brand'):null;
$min_price = Input::has('min_price')? Input::get('min_price'):null;
$max_price = Input::has('max_price')? Input::get('max_price'):null;
$ins_color = Input::has('ins_color')? Input::get('ins_color'):null;
if (isset($min_price) && isset($max_price)) {
$query -> where('ads_fie_insprice', '>=', $min_price)->
where('ads_fie_insprice', '<=', $max_price);
}
if ($ins_brand == '0') {
unset($ins_brand);
}else{
$query->where('ads_fie_insbrand', '=', $ins_brand);
}
if (isset($ins_color)) {
$query->where('ads_fie_inscolor', 'LIKE', '%'.$ins_color.'%');
}
})->paginate(2);
$link = str_replace('/?', '?', $results->render());
return View::make('search', compact('results', 'link'));
搜索刀片.php
@if(isset($results))
@foreach($results->getCollection()->all() as $result)
{{ $result->ads_fie_insbrand }}
{{ $result->ads_fie_insprice }}
{{ $result->ads_fie_inscolor }}
@endforeach
@endif
@if(isset($results))
{!! $link !!}
@endif
有人可以指导我吗?非常感谢。
这是我
的ansare
搜索控制器.php
public function search(Request $Request)
{
$results = Mod_ads::where(function($query){
$ins_brand = Input::has('ins_brand')? Input::get('ins_brand'):null;
$min_price = Input::has('min_price')? Input::get('min_price'):null;
$max_price = Input::has('max_price')? Input::get('max_price'):null;
$ins_color = Input::has('ins_color')? Input::get('ins_color'):null;
if (isset($min_price) && isset($max_price)) {
$query -> where('ads_fie_insprice', '>=', $min_price)->
where('ads_fie_insprice', '<=', $max_price);
}
if ($ins_brand == '0') {
unset($ins_brand);
}else{
$query->where('ads_fie_insbrand', '=', $ins_brand);
}
if (isset($ins_color)) {
$query->where('ads_fie_inscolor', 'LIKE', '%'.$ins_color.'%');
}
})->paginate(2);
Session::flash('_old_input',Input::all());
$link = str_replace('/?', '?', $results->appends($Request->input())->render());
return view('search', compact('results', 'link'));
}
搜索刀片.php
@if(isset($results))
@foreach($results->getCollection()->all() as $result)
{{ $result->ads_fie_brand }}
{{ $result->ads_fie_insprice }}
{{ $result->ads_fie_inscolor }}
@endforeach
@endif
@if(isset($link))
{!! $link !!}//pagination
@endif