xiaoniao 发表于 2009-9-12 11:03:12

又一个 CI 的分页,包含分页样式

转载自:http://www.phpall.cn/forum/read.php?tid=113
phpall技术交流群:75345798


分页样式的截图在这里:
http://www.smghome.net/manager/images/page.JPG
CI 的分页教程有很多了,我这里还是将我自己写的一个分页拿出来,里面包含了一个分页的样式。大家拿去就可以直接用的。
Controller 的代码:
$page_num = '2';//每页的数据
$data= $this->commonmodel->page('gaoji_news',$page_num,$this->uri->segment(3));
$total_nums=$data['total_nums']; //这里得到从数据库中的总页数
$data['query']=$data; //把查询结果放到$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方法
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 层的代码
<div id="pagelist">
<ul><?php echo $this->pagination->create_links();?>
</ul>
</div>
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;}

你微笑的看着我 发表于 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中写方法

lvyin2016 发表于 2017-1-5 09:04:55

你微笑的看着我 发表于 2016-12-3 14:08
$data= $this->commonmodel->page('gaoji_news',$page_num,$this->uri->segment(3));   

请问这一句中。括 ...

表名

wrz 发表于 2009-9-12 15:02:05

收藏起来学习

tmnh168 发表于 2009-9-29 12:59:02

可以多写几个比较漂亮的css出来,这个css不太好看啊

xiaoniao 发表于 2009-10-4 19:37:13

呵呵 我觉得还好看

可能我眼光不行了:(

xfunl 发表于 2010-11-10 15:21:33

这个不显示第一页是怎么回事 啊

xfunl 发表于 2010-11-10 15:21:53

就是里面的“首页”和“尾页”

老树 发表于 2010-11-29 12:36:34

样式确实有待改进,不过仍感觉楼主的共享。

bywzy 发表于 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
这个错误怎么解决啊?

well-sheng 发表于 2016-11-16 18:45:22

为什么分页我点哪页 就那个数字不见了啊?
页: [1] 2
查看完整版本: 又一个 CI 的分页,包含分页样式