ci框架——分页
1:在models里面写一个模型:page_model.php
class Page_model extends CI_Model{
function page($tablename,$per_nums,$start_position){//传入3个参数,表名字,每页的数据量,其实位置
$this->db->order_by('aaddtime','desc');
$this->db->limit($per_nums,$start_position);
$query=$this->db->get_where($tablename,array('ashow'=>'推荐'));
$data=$query->result();
$data2['total_nums']=$this->db->count_all($tablename);
$data2[]=$data; //这里大家可能看的优点不明白,可以分别将$data和$data2打印出来看看是什么结果。
return $data2;
}
}
2:在controller里面:
//制作分页:
$page_num = '3';//每页的数据
$this->load->model('Page_model');
$data= $this->Page_model->page('ci_admin',$page_num,$this->uri->segment(3));
//当加载model想上传多个数据的时候,这个时候:$data= $this->Page_model->page('ci_admin',$page_num,$this->uri->segment(4),$id);
$total_nums=$data['total_nums']; //这里得到从数据库中的总页数
$data['query']=$data[0]; //把查询结果放到$data['query']中
$this->load->library('pagination');
$config['base_url'] = $this->config->base_url('admin.php/Admin/index');
//路径变为:$config['base_url'] = $this->config->base_url("admin.php/Admin/index/{$id}”);
//这也是做分类分页需要加的,$id是为获取的分类id;
$config['total_rows'] = $total_nums;//总共多少条数据
$config['per_page'] = $page_num;//每页显示几条数据
$config['full_tag_open'] = '<p>';
$config['full_tag_close'] = '</p>';
$config['first_link'] = '首页';
$config['first_tag_open'] = '<li>';//“第一页”链接的打开标签。
$config['first_tag_close'] = '</li>';//“第一页”链接的关闭标签。
$config['last_link'] = '末页';//你希望在分页的右边显示“最后一页”链接的名字。
$config['last_tag_open'] = '<li>';//“最后一页”链接的打开标签。
$config['last_tag_close'] = '</li>';//“最后一页”链接的关闭标签。
$config['next_link'] = '下一页';//你希望在分页中显示“下一页”链接的名字。
$config['next_tag_open'] = '<li>';//“下一页”链接的打开标签。
$config['next_tag_close'] = '</li>';//“下一页”链接的关闭标签。
$config['prev_link'] = '上一页';//你希望在分页中显示“上一页”链接的名字。
$config['prev_tag_open'] = '<li>';//“上一页”链接的打开标签。
$config['prev_tag_close'] = '</li>';//“上一页”链接的关闭标签。
$config['cur_tag_open'] = '<li class="current">';//“当前页”链接的打开标签。
$config['cur_tag_close'] = '</li>';//“当前页”链接的关闭标签。
$config['num_tag_open'] = '<li>';//“数字”链接的打开标签。
$config['num_tag_close'] = '</li>';
//需要加$config['uri_segment']=4;
$this->pagination->initialize($config);
$this->load->view('admin/index',array('data'=>$data['query']));
3:在view视图里面:
分页的样式代码:
<style>
#pagelist{position:relative;lelft:360px;top:0px};
//这是讲代码显示在你想显示的位置;
#pagelist ul li { float:left;border:1px solid #e0691a; height:20px; font-weight:bold; line-height:20px; margin:0px 2px; list-style:none;}
#pagelist ul li a,
.current { background:#FFB27A; display:block; padding:0px 6px; font-weight:bold;}
</style>
分页的输出代码:
<div id="pagelist">
<ul>
<?php echo $this->pagination->create_links();?>
</ul>
</div>
ci框架——分页的更多相关文章
- CI框架分页类代码
model层 ; $page = $); ; }else{ $start = $page; } $data['results'] = $ ...
- CI框架分页类
分页类1.分页类参数说明 'base_url' => 指向你的分页所在的控制器类/方法的完整的 URL, 'total_rows' => 数据的总行数, 'per_page' => ...
- ci框架——修改分页的显示样式
修改ci框架分页的显示样式 用过ci框架的都知道,ci框架自带的分页样式是1,2下一页,在最开始刷新页面现实的时候如果页面不够多的话,那么首页和末页是不显的,这是ci框架的一个缺点, 这个时候需要我们 ...
- 二十七、CI框架之自己写分页类并加载(写分页还是有难度,搞了一整天)
一.我们写好自己的分页代码,防止library目录中,带构造函数 二.在模型中,添加2个函数,一个是查询数据的条数,第二个是取出数据库中的数据 三.在控制中,写入相应的代码,如下: 四.在界面中,写入 ...
- 各种demo——CI框架学习
各种demo——CI框架学习 寒假学习一下CI框架,请各位多多指教! 一.CI的HelloWorld! 注意:CI禁止直接通过文件目录来访问控制器. ./application/controlle ...
- 【军哥谈CI框架】之入门教程之第二讲:分析CI结构和CI是怎么工作的
[军哥谈CI框架]之入门教程之第二讲:分析CI结构和CI是怎么工作的 之入门教程之第二讲:分析CI结构和CI是如何工作的大家好!上一节,我们共同部署了一个CI网站,做到这一点非常简单,但是,亲们, ...
- php CI框架目录结构及运行机制
CI目录结构 CI主要组成部分为,application(应用文件夹).system(系统文件夹)和index.php入口文件. 应用文件夹中主要是存放控制器.模型和视图等,系统文件夹中主 ...
- **【ci框架】精通CodeIgniter框架
http://blog.csdn.net/yanhui_wei/article/details/25803945 一.大纲 1.codeigniter框架的授课内容安排 2.codeigniter框架 ...
- CI框架大纲总结
一.大纲 1.codeigniter框架的授课内容安排 2.codeigniter框架的简介 |-----关于框架的概念 |-----使用CI框架的好处 |-----为什么选择CI框架 3.codei ...
随机推荐
- k8s 基础概念和术语
Master k8s里的master指的是集群控制节点,每个k8s集群里需要有一个Master节点来负责整个集群的管理和控制,基本k8s所有控制命令都发给它,它负责整个具体的执行过程,后面执行操作基本 ...
- 漫谈 Clustering (4): Spectral Clustering<转载>
转自http://blog.pluskid.org/?p=287 如果说 K-means 和 GMM 这些聚类的方法是古代流行的算法的话,那么这次要讲的 Spectral Clustering 就可以 ...
- python_111_动态导入模块
lib下aa.py文件内容: class C: def __init__(self): self.name='alex' from lib import aa#正常导入 print(aa.C) 动态导 ...
- Mac如何让调整窗口大小更简单
在使用Mac的时候,你能把鼠标的光标悬停在任何程序的边缘,当光标自动变成箭头样式后,按住鼠标左键你将能随意拖动来改变程序窗口的大小.但是,这里有个问题,我们有时候很难控制把鼠标光标移动在正确的窗口边缘 ...
- Log4J的配置与使用详解
一.简介 Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件.甚至是套接口服务器.NT的事件记录器.UNIX Syslog守护 ...
- fopen()和socket()的内在联系
int portone=socket(AF_INET,SOCK_STREAM, 0); printf("portone=%d",portone); printf("ope ...
- Windows平台下使用vs code搭建python3环境(1)
前言:最近几周在使用python开发的过程中,碰到了好多坑,由于以前使用visual studio 2015习惯了,导致刚开始搭建python开发环境以及管理各种包的时候有点不习惯,再加上python ...
- GIMP模板选区操作
选择方法有很多种,这里我就新学的方法记录一下,主要是通过小剪刀和Toggle Quick Mask 相结合的运用. 选择Scissors Select Tool工具 设置基本的属性:Antialisa ...
- Python数据分析库之pandas,你该这么学!No.1
写这个系列背后的故事 咦,面试系列的把基础部分都写完啦,哈哈答,接下来要弄啥嘞~ pandas吧 外国人开发的 翻译成汉语叫 熊猫 厉害厉害,很接地气 一个基于numpy的库 干啥的? 做数据分析用的 ...
- Mac VMware fusion nat 外网映射
当我们在使用VMware fusion NAT模式时,相当于形成了一个虚拟的局域网VLAN,这时虚拟机可以对外通信,但是nat对外隐藏了内网,外网访问虚拟机的时候就会遇到问题,比如ping ,ssh ...