在yii中使用分页

yii中使用分页很方便,如下两种方法:

在控制器中:

1、

$criteria = new CDbCriteria();     //new cdbcriteria数据库$criteria->id = ‘id ASC‘;           //排序规则
$count = Exchange::model()->count($criteria);
$pager = new CPagination($count);
$pager->pageSize=30;
$pager->applyLimit($criteria);

$categoryInfo = Category::model()->findAll($criteria); //根据条件查询

  2、

$criteria = new CDbCriteria();
$criteria->order = ‘id ASC‘;
$criteria->addCondition(‘status=1‘);      //根据条件查询
$criteria->addCondition(‘exchange_status=0‘);
$count = Exchange::model()->count($criteria);
$pager = new CPagination($count);
$pager->pageSize=30;
$pager->applyLimit($criteria);
$exchangeInfo = Exchange::model()->findAll($criteria);

 render中传入参数:

array("pages" => $pager)

 视图中加入:

 $this->widget(‘CLinkPager‘,array(
      	  		‘header‘=>‘‘,
      	  		‘firstPageLabel‘ => ‘首页‘,
      	  		‘lastPageLabel‘ => ‘末页‘,
      	  		‘prevPageLabel‘ => ‘上一页‘,
      	  		‘nextPageLabel‘ => ‘下一页‘,
      	  		‘pages‘ => $pages,
      	  		‘maxButtonCount‘=>8,
      	  )
      	  );

  分页思想: 1、计算数据库中总的条数

2、分页大小

3、设置偏移量limit

在Yii中,分页时会用这个类CDBcritria进行数据库查询很重要,这样分页很简单。

在yii中使用分页

时间: 2024-12-06 03:38:12

在yii中使用分页的相关文章

yii中分页功能的使用

CDbCriteria就是这个类包的使用,这个类包是yii自带专门用来处理类似分类这样的功能的.而我们使用yii框架然后调用这个方法会起到事半功倍的效果,会发现使用这个能够节省很多的时间,让你快速的使用PHP中分页的功能. 还要使用的一个类包就是CPagination,具体的元素属性就不解释了,可以直接连接过去看API 第一步: 在控制器里面加上一下的代码: $criteria = new CDbCriteria(); $criteria->alias = 'post';//要查询表的别名 $c

yii自定义CLinkPager分页

在components中自定义LinkPager,并继承CLinkPager 代码如下: <?php /** * CLinkPager class file. * * @author liang.pingzheng * @QQ 327168521 */ class PLinkPager extends CLinkPager { const CSS_TOTAL_PAGE='total_page'; const CSS_TOTAL_ROW='total_row'; /** * @var string

yii中数据的"增删改查"相关工作!(此文比较乱,需细看)

使用findByPk()根据数据表主键查询的是对象,不需要使用foreach()循环出来 但是使用findall()和find()查询的是对象类型的数组需要使用foreach()循环出来 ======================================= public function getMinLimit () { $sql = "..."; $result = yii::app()->db->createCommand($sql); $query = $r

Yii Framework2.0开发教程(4)在yii中定义全局变量

在yii中定义全局变量最好的地方是入口脚本处.也就是web文件夹中的index.php文件 例如我们在defined('YII_ENV') or define('YII_ENV', 'dev');后写上 defined('ZYL_HEHE') or define('ZYL_HEHE','zhyoulun-hehe'); 并在我们教程(1)中建立的views/zhyoulun/helloworld.php文件中写上 <?php echo 'hello world!'; //全局变量 echo co

SpringMVC+easyUI中datagrid分页实现_2014.5.1

一.概述 SpringMVC: 1.是面对方法级变量的,在操作起来会比struts方便一些(structs是类级变量),具体体现在了srpingMVC的注解上面, 如@RequstMapping("/login"),而且对于返回值ModelAndView这也是一大亮点,既可以返回一个页面(View),再加上@ResponseBody注解以后就可以返回一个      模型对象(也就是一种数据结构). 2.对于方法级传入的参数操作起来也相当方便,比如本例中,在加载DataGrid时,会像后

YII 中的事务处理机制

$model=Post::model(); $transaction=$model->dbConnection->beginTransaction(); try{ $post=$model->findByPk(10); $post->title='new post title'; $post->save(); $transaction->commit(); }catch(Exception $e){ $transaction->rollBack(); } 摘至:h

[数据库]Oracle和mysql中的分页总结

物理分页 •在sql查询时,从数据库只检索分页需要的数据 •通常不同的数据库有着不同的物理分页语句 •mysql物理分页,采用limit关键字 •例如:检索11-20条 select * from user limit 10,10 ; * 每次只查询10条记录.当点击下一页的时候,查询数据库,查询后10条. * 优点:如果数据量非常大,不会导致内存溢出. * 缺点:每次都与数据库进行交互. * 分页一般采用数据库的sql语句完成分页查询. * MYSQL分页:使用limit关键字. * Orac

yii 中引入js 和css 的方式

在yii中 我们需要引入css 和 js 的时候,yii 自身有需要的类. 当我在views 视图层中引入css 和 js , <?php Yii::app()->clientScript->registerCssFile(Yii::app()->baseUrl .'/css/articleIndex.css');?> <?php Yii::app()->clientScript->registerScriptFile(Yii::app()->base

yii中第三方库

yii中存在一些路径别名:ext:表示包含了所有第三方扩展的目录  参考:http://www.yiiframework.com/doc/guide/1.1/zh_cn/basics.namespace yiic中第三方扩展使用http://www.yiiframework.com/extensions/?page=11