Thinkphp5 post提交模糊查询带分页如何保留参数

最近做了一个分页的模糊查询post请求,发现查出来的分页点击下一页导致所有的搜索条件被重置,分页效果就失效了。

以下是网上部分解决办法:

控制器代码

public function index($name=null){
            // 判断是否有搜索条件
            if (isset($_REQUEST['username'])) {
                $name = $_REQUEST['username'];
                // 把搜索条件的值传到模型执行搜索
                $res = (new MemberModel)->like($name);
            }else{
                $res = (new MemberModel)->lst();
            }
            $this->assign([
                'name'=>$name,
                "res"=>$res
            ]);
            return view("index");
        }

 

模型代码

public function like($name){
            return db('junyi_user')
                ->where('name','like','%'.$name.'%')
                ->paginate(1,false,['query'=>request()->param()]);
        }

paginate方法的第三个参数就可保留下来的你post让你的分页有效

 

也就是这一段代码,就可以解决这个问题了!

各位大佬,请多多指教。

 

posted @ 2019-05-14 09:52  冷晨  阅读(890)  评论(0编辑  收藏  举报