用户
 找回密码
 入住 CI 中国社区
搜索
查看: 20865|回复: 14
收起左侧

[其它 Other] 又一个 CI 的分页,包含分页样式

  [复制链接]
发表于 2009-9-12 11:03:12 | 显示全部楼层 |阅读模式
转载自:http://www.phpall.cn/forum/read.php?tid=113
phpall技术交流群:75345798


分页样式的截图在这里:

CI 的分页教程有很多了,我这里还是将我自己写的一个分页拿出来,里面包含了一个分页的样式。大家拿去就可以直接用的。
Controller 的代码:
PHP复制代码
$page_num = '2';//每页的数据
$data= $this->commonmodel->page('gaoji_news',$page_num,$this->uri->segment(3));
$total_nums=$data['total_nums']; //这里得到从数据库中的总页数
$data['query']=$data[0]; //把查询结果放到$data['query']中
$this->load->library('pagination');
$config['base_url'] = $this->config->item('base_url').'/index.php/admin_news/listnews/';
$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>';
$this->pagination->initialize($config);
$this->load->view('admin_listnews',$data);
复制代码


然后我们来看 Model 的代码这个是我的commonmodel的page方法
PHP复制代码
function page($tablename,$per_nums,$start_position){//传入3个参数,表名字,每页的数据量,其实位置
  $this->db->limit($per_nums,$start_position);
  $query=$this->db->get($tablename);
  $data=$query->result();
  $data2['total_nums']=$this->db->count_all($tablename);
  $data2[]=$data; //这里大家可能看的优点不明白,可以分别将$data和$data2打印出来看看是什么结果。
  return $data2;
}
复制代码


最后是 View 层的代码
HTML复制代码
<div id="pagelist">
  <ul><?php echo $this->pagination->create_links();?>
</ul>
</div>
复制代码

CSS 代码在这里
CSS复制代码
#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;}
复制代码

评分

参与人数 1威望 +5 收起 理由
Hex + 5 原创内容

查看全部评分

发表于 2016-12-3 14:09:38 | 显示全部楼层
べ_单纯的单纯 发表于 2012-8-8 14:22
**** 作者被禁止或删除 内容自动屏蔽 ****

你的  view  文件下的  package.php  文件   44   行有错误
发表于 2016-12-8 19:06:45 | 显示全部楼层
你微笑的看着我 发表于 2016-12-3 12:00
我是新手,有点不明白,请问控制器中的代码应该写在哪个方法中

一般都是自己在controllers中新建一个php文件然后在里面写一个class然后在class中写方法
发表于 2017-1-5 09:04:55 | 显示全部楼层
你微笑的看着我 发表于 2016-12-3 14:08
$data= $this->commonmodel->page('gaoji_news',$page_num,$this->uri->segment(3));   

请问这一句中。括 ...

表名
发表于 2009-9-12 15:02:05 | 显示全部楼层
收藏起来学习
发表于 2009-9-29 12:59:02 | 显示全部楼层
可以多写几个比较漂亮的css出来,这个css不太好看啊
 楼主| 发表于 2009-10-4 19:37:13 | 显示全部楼层
呵呵 我觉得还好看

可能我眼光不行了
发表于 2010-11-10 15:21:33 | 显示全部楼层
这个不显示第一页是怎么回事 啊
发表于 2010-11-10 15:21:53 | 显示全部楼层
就是里面的“首页”和“尾页”
发表于 2010-11-29 12:36:34 | 显示全部楼层
样式确实有待改进,不过仍感觉楼主的共享。
发表于 2011-8-30 11:09:59 | 显示全部楼层
首页,上一页不能显示,还有一个严重的BUG。就是你在第二页,点下一页,结果还是第二页,这样的结果明显不对,不过还是要感谢楼主,因为通过你的这个例子我才学会如何弄分页。
发表于 2012-8-8 14:22:49 | 显示全部楼层
Fatal error: Call to a member function create_links() on a non-object in D:\xampp\htdocs\ci\application\views\package.php on line 44
这个错误怎么解决啊?
发表于 2016-11-16 18:45:22 | 显示全部楼层
为什么分页我点哪页 就那个数字不见了啊?

本版积分规则