百搜论坛欢迎您的加入!
adimg adimg
 
昨日:篇  今日:篇   总帖:篇   会员:
博主最大Lv63   
ThinkPHP6带搜索条件的分页解决方案     

在ThinkPHP6中,实现分页不难,实现搜索也不难,但是带搜索条件的搜索却难倒很多人。同样的情况下,我们把tp5的代码搬过来,发现并不好使,那么ThinkPHP6带搜索条件的分页应该如何解决呢?

我们看下具体情景,我搜索了一个关键字,并且选择了分类进行文章的搜索筛选。

一、查找问题

首先我们先看下带搜索条件的第一页:

fenye1.jpg

然后我们再看下第二页:

分页2.jpg

仔细的小伙伴会发现,在第二页、第三页的时候URL中没有带搜索条件。

二、如何解决:

问题关键已经找到了,那么如何解决呢?我们先去官网手册找一找:

fenye3.jpg

在手册中,有个query 的项是负责url额外参数传递的,那这样就好办了。

直接看代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

$where=[];//筛选条件数组

     if(input('cate_id')){

        $where[] = [

                     ['a.cate_id', '=', $cate_id],

                 ];

     }

 

     if(input('searchkey')){

        $where[] = [

                     ['title', 'like', '%'.$searchkey.'%'],

                 ];

     }

     $archivesData=Db::name('archives')->alias('a')->

            field('a.id,a.title,a.listorder,b.cate_name,a.time')->

            join('category b','a.cate_id=b.id')->

            where($where)->

            order('a.listorder asc')->//小到大

            order('a.id DESC')->//大-》小

            paginate([

              'list_rows'=> 3,//每页数量

              'query' => request()->param(),

              ]);

这样我们就把”ThinkPHP6带搜索条件的分页“这个问题完美解决了,其实遇到问题不要怕,我们先仔细看看手册,说不定就能解决我们遇到的难题。

【相关推荐】

1. 【干货】ThinkPHP6对接微信扫码登录

2. 使用工厂模式实现Thinkphp6.0接入阿里云短信

以上就是ThinkPHP6带搜索条件的分页解决方案的详细内容

 0  已被阅读了1177次  楼主 2020-06-23 10:22:12
回复列表

回复:ThinkPHP6带搜索条件的分页解决方案

联系站长 友链申请桂ICP备19000949号-1     桂ICP备19000949号-1
您的IP:18.118.171.20,2024-05-07 15:42:47,Processed in 0.01904 second(s).
免责声明: 本网不承担任何由内容提供商提供的信息所引起的争议和法律责任。
Powered by HadSky 7.12.9
已有0次打赏
(0) 分享
分享
取消
免责声明
1、本站资源,均来自网络,版权归原作者,所有资源和文章仅限用于学习和研究目的 。
2、不得用于商业或非法用途,否则,一切责任由该用户承担 !
如果觉得本文还不错请点个赞或者打赏点轻币哦~
拒绝伸手党,拿走请回复,尊重楼主,尊重你我他~

侵权删除请致信 E-Mail:207882320@qq.com