在ThinkPHP中进行查询和数据分页
程序员文章站
2022-05-26 11:12:50
...
查询用到的方法
在查询时要实现不同字段相同的查询条件,即$map['no|name|py|sex'] = $find;还运用到解码和编码,urlencode是编码urldecode是解码,还有ThinkPHP中的paramete。
数据分页
数据分页通常会在对数据进行查询后进行分页操作,下面的代码用的是page方法进行数据分页,在数据分页后通常页数是从1开始,可以使用setConfig方法来实现分页式定制修改默认的一些设置。
实现的代码
public function index($p='1',$find=''){
$find = urldecode($find);
$pagesize=10;
if(!empty($find)){
$map['no|name|py|sex'] = $find;//不同字段相同的查询条件
}
$model = M('student'); // 实例化model对象
$count = $model->where($map)->count();// 查询满足要求的总记录数
$page = new \Think\Page($count,$pagesize);// 实例化分页类 传入总记录数和每页显示的记录数
//用setConfig方法来修改默认的一些设置
$page->setConfig('prev','上一页');
$page->setConfig('next','下一页');
$page->setConfig('first','首页');
$page->setConfig('last','末页');
$page->lastSuffix=false;
//分页跳转的时候保证查询条件
if(!empty($find)){
$page->parameter['find'] = urlencode($find);
}
$show = $page->show();// 分页显示输出
$data = $model->where($map)->page("{$p},{$pagesize}")->select();
$this->assign('find',$find);
$this->assign('page',$show);
$this->assign('data',$data);
$this->display();
}
推荐阅读
-
sql 查询 一张表里面的数据 在另一张表中是否存在 和 比对两个集合中的差集和交集(原创)
-
利用查询条件对象,在Asp.net Web API中实现对业务数据的分页查询处理
-
Mysql和Oracle数据库中的分页查询_MySQL
-
MySQL和Oracle数据库中的分页查询
-
在应用程序中进行数据关联和直接使用关联查询的优劣?
-
在应用程序中进行数据关联和直接使用关联查询的优劣?
-
在ThinkPHP中进行查询和数据分页
-
在Java的Hibernate框架中对数据库数据进行查询操作
-
sql 查询 一张表里面的数据 在另一张表中是否存在 和 比对两个集合中的差集和交集(原创)
-
利用查询条件对象,在Asp.net Web API中实现对业务数据的分页查询处理