< 返回首页

标哥的笔记,是记录在日常学习技术和日常开发中那些年遇到过的坑!本站为新站,原"标哥的技术博客"中的文章会慢慢移到本站,欢迎收藏本站!
在使用本站过程中,有任何建议请联系标哥! 另,承接App开发、网站开发和微信小程序开发!欢迎联系我们


ThinkPHP5中URL带参数时分页参数处理办法

 作者:标哥    发布日期:2017-03-01 16:14    阅读量:2454次
 

ThinkPHP5中,使用paginate函数进行分页时,如果URL中存在请求参数,那在点击第二页的时候还会将参数再拼接一起,这怎么处理呢?

问题

初始:http://www.xxx.com/public/setting/material/c/2/q/1.html

分页后:http://www.xxx.com/public/setting/material/c/2/q/1.html?c=2&q=1&page=2

这样明显不好看,我的调用是这样的:

$list = db('XXXXXXXXXXXXXX')
    ->alias('mc')
    ->join('YYYY c', 'c.id = mc.category_id')
    ->where('mc.uid', $uid)
    ->where('mc.category_id', $category_id)
    ->field('mc.*, c.category_name')
    ->paginate(12, false, ['query' => request()->param()]);

解决办法

将上面代码中的:

request()->param()

改成:

request()->post()

也就是说只拼接post参数!


承接:ThinkPHP项目开发、网站项目开发、微信项目开发、微信小程序项目开发、App开发,欢迎联系标哥QQ632840804