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

[已解决] 请教:如何针对不同分类取文章的列表和分页?

  [复制链接]
发表于 2008-9-12 10:35:44 | 显示全部楼层 |阅读模式
大家好,我在做一个文章管理程序时遇到了这样的问题,自己想了许久不得解法,希望大家能帮忙。

我现在的目的是想针对不同的文章分类,去取出分类下的文章列表,并且是带分页的列表。

但我用CI的分页类只能实现对整个文章表进行分页,郁闷,希望大家帮忙,给出解法。
发表于 2008-9-12 10:38:24 | 显示全部楼层
你是不是想从数据库里取一部分文章?而现在是取了所有的文章?
 楼主| 发表于 2008-9-12 10:39:18 | 显示全部楼层
是的,首先是通过GET传递分类的ID,然后在根据分类ID取分类下的文章和分页
发表于 2008-9-12 10:40:51 | 显示全部楼层
如果分类ID是必须有的,可以放到分页 URL 中,然后传给模型,不就可以了?
 楼主| 发表于 2008-9-12 10:42:18 | 显示全部楼层
我明白这个意思,但不知道怎么去操作了。
发表于 2008-9-12 10:46:14 | 显示全部楼层
http://codeigniter.org.cn/forums/thread-17-1-2.html
根据这篇文章的例子,把
PHP复制代码
$config['base_url'] = site_url('books/index');
复制代码

改成
PHP复制代码
$config['base_url'] = site_url('books/index/分类ID');
复制代码


PHP复制代码
$config['total_rows'] = $this->db->count_all('christian_books');
复制代码

改成
PHP复制代码
$config['total_rows'] = $this->books_model->get_books_count('christian_books', $this->uri->segment(3));
// get_books_count 要自己编写,就是取某个分类ID总数的方法
复制代码


PHP复制代码
$config['uri_segment'] = 3;
复制代码

改成
PHP复制代码
$config['uri_segment'] = 4;
复制代码


PHP复制代码
$data['results'] = $this->books_model->get_books($config['per_page'], $this->uri->segment(3));
复制代码

改成
PHP复制代码
$data['results'] = $this->books_model->get_books($this->uri->segment(3), $config['per_page'], $this->uri->segment(4));
// get_books 也要自己重写,第一个参数为分类ID,其他和例子中一样。
复制代码

点评

真的不错,给个赞,我是菜鸟,学习  发表于 2015-4-3 16:29
 楼主| 发表于 2008-9-12 10:50:12 | 显示全部楼层
我试试去,    谢谢咯。
发表于 2008-11-30 03:03:27 | 显示全部楼层
收藏掉慢慢看。慢慢研究。
发表于 2009-3-17 23:05:43 | 显示全部楼层
如果是一个查询操作呢,比如like操作,那么模型内增加一个单独获取查询结果数量的方法岂不是每次都要执行两个sql查询语句了啊?
发表于 2009-10-22 11:12:06 | 显示全部楼层
这个方法不错,不过条件多了的话,或许会麻烦些。

本版积分规则