thinkPHP分页显示数据

第一种:利用Page类和limit方法

  1. //实例化User对象
  2. $User=M('User');
  3. //查询满足要求的总记录数
  4. $count=$User->where('status=1')->count();
  5. //实例化分页类,传入总记录数和每页显示的记录数(25)
  6. $Page=new \Think\Page($count,25);
  7. //分页显示输出
  8. $show=$Page->show();
  9. //进行分页数据查询,注意limit方法的参数要使用Page类的属性
  10. $list=$User->where('status=1')->order('create_time')->limit($Page->firstRow.','.$Page->listRows)->select();

  11. //赋值数据集
  12. $this->assign('list',$list);
  13. //赋值分页输出
  14. $this->assign('page',$show);
  15. //输出模板
  16. $this->display();

第二种:分页类和page方法的实现


  1. //实例化User对象
  2. $User=M('User');
  3. //进行分页数据查询,注意page方法的参数的前面部分是当前的页数使用$_GET[p]获取
  4. $list=$User->where('status=1')->order('create_time')->page($_GET['p'].',25')->select();
  5. //赋值数据集
  6. $this->assign('list',$list);
  7. //查询满足要求的总记录数
  8. $count=$User->where('status=1')->count();
  9. //实例化分页类,传入总记录数和每页显示的记录数
  10. $Page=new \Think\Page($count,25);
  11. //分页显示输出
  12. $show=$Page->show();
  13. //赋值分页输出
  14. $this->assign('page',$show);
  15. //输出模板
  16. $this->display();

第三种:

$classify=M("demand_classify")->where("topplay=1")->select();

$classifyIDs=array();
foreach ($classify as $k => $v) {
$classifyIDs[]=$v['id'];
}


$map['l.demand_classify']=array("IN",$classifyIDs); //点播分类允许显示

$lists=M("users_liverecord l")

->field("u.user_nicename,u.avatar,u.id,a.title as course_name,a.content,l.*")
->join("left join {$prefix}users u on u.id=l.uid")
->join("left join {$prefix}apply_records a on l.applyid=a.id")
->where($map)
->where("l.isdisplay=1 and isdel=0 and l.type=0")
->order("l.hits desc,l.endtime desc")
->select();

foreach($lists as $k=>$v){
$lists[$k]['title1']=$lists[$k]['title'];
if(mb_strlen($v['course_name'],"utf-8")>11){
$lists[$k]['course_name']=mb_substr($v['course_name'],0,11,"utf-8")."…";
}
}

$vodio=M("users_liverecord")->where("type=1 and isdisplay=1")->select();

foreach($vodio as $ko=>$vo){

$userinfo=M("users")->field("user_nicename,avatar")->where("id='{$vo['uid']}'")->find();
$vodio[$ko]['user_nicename']=$userinfo['user_nicename'];
$vodio[$ko]['avatar']=$userinfo['avatar'];
$vodio[$ko]['course_name']=$vo['video_name'];
$vodio[$ko]['content']=$vo['video_conn'];
}


$hebing= array_merge($vodio, $lists);//将数组合并

 $count=count($hebing);  //获取数据总数
 $pagesize=20; //分页显示数量
 $Page= new \Page2($count,$pagesize); //实例化分页类
 $show= $Page->show(); //分页显示输出

$hebing=array_slice($hebing,$Page->firstRow,$Page->listRows); //将数据按照分页数分割获取
            
$this->assign("live",$hebing);
$this->assign('page',$show);



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值