`
李俊良
  • 浏览: 145316 次
  • 性别: 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分页组件的定位。在Yii框架中,分页组件是作为一个独立的组件存在,我们可以将其配置在...

    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::...

    YII 分页排序

    **YII框架中的分页与排序** YII是一款高性能的PHP框架,用于开发Web 2.0应用。在处理大量数据时,分页和排序功能是必不可少的,它们能提高用户体验,使用户能够轻松地浏览和查找所需信息。在本篇文章中,我们将深入...

    datagrid+yii2分页查询

    在本文中,我们将深入探讨如何在Yii2框架中结合Datagrid实现数据的分页查询功能,同时涵盖用户登录注册、数据删除与修改等关键点。Yii2是一个高性能、易用且富有灵活性的PHP框架,而Datagrid是它的一个重要组件,...

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

    Yii 提供了简单易用的分页机制,本文将详细介绍两种在 Yii 中实现分页的方法。 1. 在控制器(Controller)中实现分页: 在 Yii 中,分页通常在控制器中进行初始化和配置。以下展示了两种方法: **方法一:** ```...

    Yii实现简单分页的方法

    以下是实现Yii分页功能的关键步骤: 1. 在控制器(Controller)中创建分页数据的逻辑。通过控制器来创建一个CDbCriteria对象,用于指定如何从数据库中读取数据。然后使用CPagination对象,并将数据总数量传递给...

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

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

    yii使用bootstrap分页样式的实例

    Yii 框架结合 Bootstrap 创建分页样式是一个常见的需求,特别是在构建现代响应式网页应用时。Bootstrap 是一个广泛使用的前端框架,它包含了一系列预定义的 CSS 和 HTML 规范,可以快速构建美观、响应式的界面。这个...

    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)); $...

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

    Yii2框架内置了分页功能,即Pagination类,以及一个非常灵活的分页控件LinkPager,可以通过扩展实现各种自定义的分页效果。 ### Yii2分页的使用方法 首先,要使用Yii2的分页功能,需要在控制器(Controller)中...

    Yii使用CLinkPager分页实例详解

    CLinkPager是Yii框架中用于实现数据分页显示的一个组件,该组件能够生成一个链接列表,通过这些链接用户可以访问数据的不同页面。本文将详细介绍Yii中使用CLinkPager进行数据分页显示的实例。 首先,CLinkPager继承...

    yii CDbCriteria多条件搜索后分页

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

    Yii视图操作之自定义分页实现方法

    本文重点介绍Yii框架下的视图操作之自定义分页实现方法,涵盖了从调用分页方法、复制修改基类分页类文件,到通过CSS样式文件进行分页外观的定制等方面的知识。 在Yii框架中,分页功能通常在视图层通过CGridView和...

Global site tag (gtag.js) - Google Analytics