CodeIgniter分页类pagination使用方法示例

本文实例讲述了CodeIgniter分页类pagination使用方法。分享给大家供大家参考,具体如下:

controller控制器(application/controller/page.php文件):

public function index()
{
    $this->load->model ( 'home_model' , '' , TRUE);
    $config= array();
    $config['per_page'] = $this->per_page; //每页显示的数据数
    $current_page    = intval($this->input->get_post('per_page',true)); //获取当前分页页码数
    //page还原
    if(0 == $current_page)
    {
      $current_page = 1;
    }
    $offset = ($current_page - 1 ) * $config['per_page']; //设置偏移量 限定 数据查询 起始位置(从 $offset 条开始)
    $result = $this->home_model->index($offset,$config['per_page'],$order='id desc');
    $config['base_url']      = $this->config->item('base_url').'admin/home/index?';
    $config['first_link']     = $this->first_link;//首页
    $config['prev_link']     = $this->prev_link;//上一页
    $config['next_link']     = $this->next_link;//下一页
    $config['last_link']     = $this->last_link;//尾页
    $config['total_rows']     = $result['total'];//总条数
    $config['num_links'] = 3;//页码连接数
    $config['use_page_numbers']  = TRUE;
    $config['page_query_string'] = TRUE;
    $this->load->library('pagination');//加载ci pagination类
    $this->pagination->initialize($config);
    $result = array(
        'list' => $result['list'],
        'total'  => $result['total'],
        'current_page' => $current_page,
        'per_page' => $config['per_page'],
        'page'  => $this->pagination->create_links(),
    );
    $this->load->view ( 'admin/home' , $result );
}

model模型(application/model/home_model.php文件):

public function index($offset,$num,$order='id desc')
{
    $query = $this->db->query( "SELECT Name_cn,Mall_type,create_time FROM smzdm_mall WHERE Is_deleted = 0 order by {$order} limit {$offset},{$num}");
    return array(
        'total' => $this->db->count_all('smzdm_mall',array('Is_deleted'=>'0')),
        'list' => $query->result(),
    );
}

更多关于CodeIgniter相关内容感兴趣的读者可查看本站专题:《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

(0)

相关推荐

  • CodeIgniter图像处理类的深入解析

    image.php 复制代码 代码如下: <?phpclass Image extends Controller {    function Image()    {    parent::Controller();       $this->load->library('image_lib');       } //缩略图    function index(){        echo '* 调整图像大小 <br>            * 创建缩略图 <br>

  • Codeigniter整合Tank Auth权限类库详解

    相交其他CodeIgniter的类库,tank_auth,配置简单,使用也简单,并且作者也一直在更新,现在是1.0.9.1.0.8已经支持CI2.0了,我现在一般的项目都是用它,所以推荐给大家. 安装Tankauth的步骤 下载最新版类库(下载地址:http://www.konyukhov.com/soft/tank_auth/tank_auth.zip) 解压文件将application下相应的文件复制到你的CIapplication文件夹下.将captcha文件夹复制到你的CI文件夹(项目目

  • CI(Codeigniter)的Setting增强配置类实例

    本文实例讲述了Codeigniter的Setting增强配置类.分享给大家供大家参考,具体如下: 该增强配置类适用配置项要求比较灵活的项目.可实现预加载配置.组配置.单项调取.增.删.改配置,无需在改动config文档. 使用: 在需要的地方 复制代码 代码如下: $this->load->library('setting'); 对于预加载项可以使用 复制代码 代码如下: $this->config->item(); 进行获取 对于临时调取项可以使用 复制代码 代码如下: $thi

  • codeigniter中测试通过的分页类示例

    通用分页类(以Codeigniter测试) page_list.php 复制代码 代码如下: <?php if( ! defined('BASEPATH')) die('No Access'); /** * 分页类 */class Page_list { /**     * 总数据     * @var int     */    private $total;    /**     * 每页显示数据     * @var int     */    private $size;    /** 

  • CodeIgniter辅助之第三方类库third_party用法分析

    本文实例分析了CodeIgniter辅助之第三方类库third_party用法.分享给大家供大家参考,具体如下: third_party用来存放系统中引入的第三方类库,类库通常提供的功能比较丰富,相应的学习成本也要高些,系统中能用到功能有限,所以建议在引入类库时进行适当的封装,让系统中更方便使用,其他人使用时只需关注扩展的方法而无法关注具体的实现.以CI集成Twig模版为例吧. 首先需要下载Twig类库,并放在third_party中,然后在libraries中进行一次封装,示例如下: <?ph

  • php实现仿写CodeIgniter的购物车类

    本文实例讲述了php实现仿写CodeIgniter的购物车类.分享给大家供大家参考.具体如下: 这里仿写CodeIgniter的购物车类 购物车基本功能: 1) 将物品加入购物车 2) 从购物车中删除物品 3) 更新购物车物品信息 [+1/-1] 4) 对购物车物品进行统计    1. 总项目    2. 总数量    3. 总金额 5) 对购物单项物品的数量及金额进行统计 6) 清空购物车 cart.php文件如下:  <?php /** * * @author quanshuidingda

  • CodeIgniter扩展核心类实例详解

    本文实例讲述了CodeIgniter扩展核心类的方法.分享给大家供大家参考,具体如下: CI中对核心类.辅助类和函数的扩展是相当方便的,配置文件中指定了subclass_prefix扩展前缀,默认为MY_,扩展时需要以该配置为前缀,下面整理下扩展方式. 1.扩展核心类 核心类位于system/core下,其中大部分类会在初始化的时候自动加载.扩展核心类的方式有两种:替换核心类和继承核心类. 替换核心类 当application/core目录下存在与system/core同名的文件时会自动替换掉核

  • CodeIgniter基于Email类发邮件的方法

    本文实例讲述了CodeIgniter基于Email类发邮件的方法.分享给大家供大家参考,具体如下: CodeIgniter拥有功能强大的Email类.以下为利用其发送邮件的代码. 关于CI的Email类的详情请参考:http://codeigniter.org.cn/user_guide/libraries/email.html 文件路径为/application/controllers/welcome.php <?php if ( ! defined('BASEPATH')) exit('No

  • Codeigniter的dom类用法实例

    本文实例讲述了Codeigniter的dom类用法.分享给大家供大家参考.具体分析如下: 利用simple_html_dom dom类为CI修改的一个类库,可以像JS一样对HTML元素进行分析,适合与抓取网页时,对网页数据进行的分析. 类库下载地址: http://sourceforge.net/projects/simplehtmldom/ 修改: 把simple_html_dom批量替换为CI_Simple_html_dom. 放置在application\libraries下: funct

  • CI框架(CodeIgniter)公共模型类定义与用法示例

    本文实例讲述了CI框架(CodeIgniter)公共模型类定义与用法.分享给大家供大家参考,具体如下: 我们都知道,操作数据库的方法都写在模型中.但是一般情况下,一张表往往至少对应4个操作,也就是所谓crud.那么如果20张表,所对应的模型方法,就达到了80个,重复的操作显然这已经是一个体力活儿. 那么就对单表操作时,我们进行一下简单的封装.如下是ci框架的示例: <?php /** * Created by PhpStorm. * User: kangjianrong * Date: 16-8

  • CI(CodeIgniter)模型用法实例分析

    本文实例分析了CI(CodeIgniter)模型用法.分享给大家供大家参考,具体如下: MVC中的业务逻辑放在控制器中或者模型里都是不合适的,所以这里对业务逻辑进行了分离,多出一层用来处理业务逻辑,模型就只当作数据访问层,这样子模型将会变得比较轻.CI中并未通过实体对象来传参,参数的传入和返回都由开发者控制,比较灵活.很多情况下都会以数组的方式传入或者返回. 模型的使用也比较简单,这里只提一下使用前想到的几个问题吧. 1.既然已经有了数据访问层了,那我们就应当避免在控制器或者某些类中直接通过SQ

  • 使用CodeIgniter的类库做图片上传

    CodeIgniter的文件上传类允许文件被上传.您可以设置指定上传某类型的文件及指定大小的文件. 上传文件普遍的过程: 一个上传文件用的表单,允许用户选择一个文件并上传它.当这个表单被提交,该文件被上传到指定的目录.同时,该文件将被验证是否符合您设定的要求.一旦文件上传成功,还要返回一个上传成功的确认窗口. 下面是表单: 复制代码 代码如下: <form method="post" action="<?=base_url()?>admin/img_uplo

随机推荐