最近在使用thinkPHP,不得不说的确很方便,尤其是数据库操作来说,对于我这样不会后端的前端来说简直是一把锋利的剑。好吧,就是别人造好的轮子而已,我只是拿来用用而已。下面来开始写自己用TP分页的代码:
一、引用thinkphp这个就不用我说了吧
百度thinkphp到官网下载,有安装说明
二、项目需求:
事情是这样的,我要根据时间段来查询数据中的表
- 前台index.html
- 后台 ResultController.class.php(注:控制器) result.html
三、分页及代码:ResultController.class.php
<?php
namespace Admin\Controller;
use Think\Controller;
class ResultController extends Controller{
public function result(){
$Members=M('members');
//获取页面发回来的参数
$gstime=$_GET['stime'];
$getime=$_GET['etime'];
//根据时间段查询 array($gstime,$getime)
$condition['reg_time']=array('between',"$gstime,$getime");
//获取查询的数据个数
$count=$Members->where($condition)->count();
$this->assign('cou',$count);
//对查询的数据进行分页操作
$Page= new \Think\Page($count,20);//每页显示的数据为10个
$Page->setConfig('header','条数据');
$Page->setConfig('prev','上一页');
$Page->setConfig('next','下一页');
$Page->setConfig('first','首页');
$Page->setConfig('last','末页');
$show=$Page->show();
// 分页显示输出
$data=$Members->where($condition)->limit($Page->firstRow . ',' . $Page->listRows)->select();
// $data=$Members->where($condition)->select();
$this->assign('member',$data);
$this->assign('page', $show);
$this->display();
}
}
?>
四、先看下前台界面你就知道了:
五,我所遇到的坑
刚开始使由于是POST提交,每次点击下一页或者其它页,数据会是0,没有结果
六,解决办法,,换成GET提交! 换成GET提交! 换成GET提交!
七,POST提交保持查询条件的请另行百度
八、分页样式,,这个简单,自定义,,
由于tp的a标签都是有class的所以,你可以自定义哟,给张图解:
样式效果在上图: