用TP框架分页POST查询时,容易碰到这样一个问题 ---“查询出结果后,再去点击分页链接的任何一页的时候,查询条件会消失,点击出来的下一页也会恢复成没有查询的样子”
究其原因,是因为分页链接的请求方式是GET请求,GET请求时查询参数并没有放入URL地址中,导致查询语句丢失导致。
下面是相对正确的解决方式:
思路是:将查询的条件添加到URL中,不过这样就有需要特别注意的一点,那就是如何保证分页跳转的时候带入查询条件?
下面是TP3.2.3给出的方法
$count = $User->where($map)->count();// 查询满足要求的总记录数
$Page = new \Think\Page($count,25);// 实例化分页类 传入总记录数和每页显示的记录数
//分页跳转的时候保证查询条件
foreach($map as $key=>$val) {
$Page->parameter[$key] = urlencode($val);
}
$show = $Page->show();// 分页显示输出
这是后台代码
public function index($p='1',$find=''){
// 分页
$find = urldecode($find);
$pagesize=10;
if (!empty($find)) {
$map['no'] = array('like',$f