TP3.2带条件分页,解决编码的问题

TP3.2带条件分页,解决编码的问题

  • 公司的项目框架用的是tp框架,列表数据展现的时候时常会带有一些关键字搜索或者多条件检索,实现方法第一个使用 ajax(这种方法挺好的)毕竟现在很多UI框架都是采用的这个方式。第二个方法就是框架自带的分页来实现。

在网上大概看了一个关于自带的框架的实现方法,大概就是2种:
urlencode 和 cookie实现。不过我觉得用cookie实现感觉不太好要是条件多了你把每一个条件都存起来,是不是有些麻烦。我们就用urlencode 实现吧。直接上代码 $map 为你的条件数组如

['start_time'=>"2019-01-01","end_time"=>"2020-01-01","keyword"=>'张三']
$count      = $User->where($map)->count();// 查询满足要求的总记录数
$Page       = new \Think\Page($count,25);// 实例化分页类 传入总记录数和每页显示的记录数
//分页跳转的时候保证查询条件
foreach($map as $key=>$val) {
    $Page->parameter[$key]   =   urlencode($val);
}
$show       = $Page->show();// 分页显示输出

但是我们可能会遇见当我们关键字搜索时候采用汉字的时候就会出现编码的问题,导致分页和搜索出问题。所以我们在整理$map的时候加上:
只要条件中可能出现非数字的地方都这样处理下

$keyword = I('keyword','');
if($keyword){
  $map['keyword'] = urldecode($keyword);
}

关于视图渲染就和手册上的一样没有其他区别了。
关于手册的分页详解

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值