`
李俊良
  • 浏览: 141649 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

yii分页

 
阅读更多

【转】yii 分页功能详解


Yii 是利用CPagination来实现

//在 Controller(控制器) 中的代码

public function actionIndex()

{

$criteria = new CDbCriteria();

$criteria->order = ' 数据库字段 desc'; //按什么字段来排序

$count = Article::model()->count('$criteria');//count() 函数计算数组中的单元数目或对象中的属性个数。

$pager = new CPagination('$count');

$pager -> pageSize = 10; //每页显示的行数

$pager->applyLimit($criteria);

$artList = Article::model()->findA($criteria);//查询所有的数据

$this->render('index',array('pages'=>$pager,'list'=>$artList));

}

下面是view中的代码

<div>

<?php

$this->widget('CLinkPager',array(

'header'=>'',

'fristPageLabel'=>'首页',

'lastPageLabel'=>'末页',

'prevPageLabel'=>'上一页',

'nextPageLabel'=>'下一页',

'pages'=>'$pages',

'maxButtonCount'=>13,

)

);

</div>



一般写法:

$criteria = new CDbCriteria; 
$count = DnOnline::model()->count($criteria); 

$pages = new CPagination($count); 
$pages->pageSize = 5; 
$pages->applylimit($criteria); 

$model = DnOnline::model()->findAll($criteria); 

$criteria = new CDbCriteria; 

$count = DnOnline::model()->count($criteria); 

$pages = new CPagination($count); 

$pages->pageSize = 5;

$pages->applylimit($criteria); $model = DnOnline::model()->findAll($criteria); 
CDB写法: 

$criteria = new CDbCriteria; 
$sql = "SELECT * FROM USER"; 
$model= Yii::app()->db->createCommand($sql)->queryAll(); 
$pages = new CPagination(count($model)); 
$pages->pageSize = 4; 
$pages->applylimit($criteria); 

$model=Yii::app()->db->createCommand($sql." LIMIT :offset,:limit"); 
$model->bindValue(':offset', $pages->currentPage*$pages->pageSize); 
$model->bindValue(':limit', $pages->pageSize); 
$model=$model->queryAll(); 

CDB写法: $criteria = new CDbCriteria; 

$sql = "SELECT * FROM USER"; 

$model= Yii::app()->db->createCommand($sql)->queryAll(); 

$pages = new CPagination(count($model)); $pages->pageSize = 4; 

$pages->applylimit($criteria); 

$model=Yii::app()->db->createCommand($sql." LIMIT :offset,:limit"); 

$model->bindValue(':offset', $pages->currentPage*$pages->pageSize); $model->bindValue(':limit', $pages->pageSize); $model=$model->queryAll();
$criteria=new CDbCriteria(); 

$result = Yii::app()->db->createCommand($sql_do)->query(); 

$pages=new CPagination($result->rowCount); 

$pages->pageSize=2; 

$pages->applyLimit($criteria); 

$result=Yii::app()->db->createCommand($sql_do." LIMIT 2"); 

$result->bindValue(':offset', $pages->currentPage*$pages->pageSize); 

$result->bindValue(':limit', $pages->pageSize); 

$list=$result->query();
分享到:
评论

相关推荐

    yii分页组件用法实例分析

    本文实例讲述了yii分页组件用法。分享给大家供大家参考,具体如下: 该案例使用时,分页类在yii框架中以组件的形式存在于components中。 action代码如下: public function actionIndex(){ $user=User::model(); ...

    Yii分页用法实例详解

    下面我总结了在Yii常用的一些yii分页方式与实例代码,这里有普通分页与ajax实现分页,希望此文章对大家会有所帮助。 第一种:CListView分页 针对对象形式的数据分页 Controller: 复制代码 代码如下:public function...

    YII实现分页的方法

    本文以实例代码简述了yii实现分页的方法,供学习yii的朋友参考,具体代码如下: 1.控制器部分代码:  public function actionTest() { $criteria=new CDbCriteria; $criteria-&gt;order='id DESC'; $count=User::...

    datagrid+yii2分页查询

    使用datagrid与yii2框架实现的简单数据分页与分页查询,包括用户登陆注册、数据的删除与修改

    YII 分页排序

    NULL 博文链接:https://hudeyong926.iteye.com/blog/1320625

    yii框架使用分页的方法分析

    主要介绍了yii框架使用分页的方法,结合实例形式分析了两种Yii框架分页的实现方法及相关操作注意事项,需要的朋友可以参考下

    Yii框架分页实现方法详解

    下家公司用的框架是yii,这几天看了下相关教程,今儿把分页教程写下,最后把tp的分页也给整合进了yii,因为个人觉得yii分页没有tp用的顺手。 首页,在models目录里创建个Auth.php的模型文件,里面写入 class Auth ...

    详解Yii实现分页的两种方法

    Yii实现分页的两种方法,一种是用DAO实现,另外一种是在widget实现. 各有优点吧,第一种效率会高一点, 第二种可以使用自带的表格,方便一些. 一. DAO实现分页.  [Controller层] public function actionReport() { ...

    Yii1.1中通过Sql查询进行的分页操作方法

    $user = Yii::app()-&gt;user; $id = $user-&gt;id; $connection=Yii::app()-&gt;db; $sql= sql查询语句; $command = $connection-&gt;createCommand($sql)-&gt;queryAll(); $pages = new CPagination(count($command)); $...

    yii使用bootstrap分页样式的实例

    Bootstrap是Twitter推出的一个开源的用于前端开发的工具包。...Bootstrap一经推出后颇受欢迎,一直是GitHub上的热门开源项目,包括NASA的MSNBC...yii自带了分页类和页面样式,但如果是yii+bootstrap开发的项目如何在不

    Yii实现简单分页的方法

    yii分页方法 function actionPage(){ $criteria=new CDbCriteria(); $count=Archives::model()-&gt;count($criteria); $pages=new CPagination($count); // results per page $pages-&gt;pageSize=10; $pages-&gt;...

    YII CLinkPager分页类扩展增加显示共多少页

    yii的分页类CLinkPager默认是不支持显示共x页的,那么现在接的项目有这样的需求,怎么办呢?下面通过本文给大家介绍YII CLinkPager分页类扩展增加显示共多少页的实例代码,需要的朋友参考下吧

    yii2实现分页,带搜索的分页功能示例

    本篇文章主要介绍了yii2实现分页,带搜索的分页功能示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

    Yii2分页的使用及其扩展方法详解

    主要介绍了Yii2分页的使用及其扩展方法详解的相关资料,本文介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下

    yii CDbCriteria多条件搜索后分页

    我最近接触yii总结的一点经验,希望能帮助大家

    Yii使用CLinkPager分页实例详解

    主要介绍了Yii使用CLinkPager分页的方法,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics