有没有一种方法可以使用GET方法中的变量在laravel中查询?

时间:2020-06-15 05:22:23

标签: php mysql laravel

我想使用laravel项目中的过滤器进行过滤,并使用laravel paginate进行分页,我尝试使用此代码

$search = $request->get('query');  
$products= DB::table('products')
           ->where('nama_produk', 'LIKE', '%'.$search.'%') 
           ->paginate(6);

使用此代码时,不会出现任何错误,但它将返回我的数据库表中的所有数据且未过滤。

如果我使用此代码

$search = $request->get('query');  
$products= DB::table('products')
           ->where('nama_produk', 'LIKE', '%test%') 
           ->paginate(6);

成功了:( 有人可以帮助我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

这是我的搜索控制器:

public function search(Request $request){
  $query = $request->query;
  $search = Post::where('post_title', 'LIKE', "%$query%")->orWhere('post_body', 'LIKE', "%$query%")->orWhere('post_tags', 'LIKE', "%$query%")->orderBy('created_at')->paginate(10);
  return view('front.search', ['posts'=> $search, 'query'=> $query]);
}

希望这会有所帮助。