tlerbao 发表于 2012-5-28 16:55:18

我这个分页写的有什么问题么?怎么就不行呢!!!

本帖最后由 tlerbao 于 2012-5-28 17:58 编辑

控制器里面


                function newslist()
                {
                        $classid = $this->uri->segment(3);
                        $total_rows = $this->news_mdl->get_news_num($classid);
                        
                        //分页开始
                        $this->load->library('pagination');      //载入分也类
                        $config['base_url'] = site_url('news/newslist/'.$classid);
                        $config['total_rows'] = $total_rows; //记录总数
                        $config['per_page'] = 3; //每页数
                        $config['uri_segment'] = 4;
                        $config['use_page_numbers'] = TRUE;
                        $config['first_link'] = '首页';
                        $config['last_link'] = '末页';
                        $config['next_link'] = '下一页';
                        $config['prev_link'] = '上一页';
                        $this->pagination->initialize($config); //初始化分页
                        
                        $data['newsnav'] = $this->news_mdl->get_newsnav();
                        $data['newslist'] = $this->news_mdl->get_news_list($classid,$this->uri->segment(4,0),$config['per_page']);
                        
                        $this->load->view('news/list',$data);                        
                }



模型里面


                function get_news_num($classid) //获取栏目新闻总数
                {
                        $query = $this->db->where('news_class',$classid)->get('dili_u_m_news');
                        return $query->num_rows();
                }

                function get_news_list($classid,$offset,$limit) //获取新闻列表分页
                {
                        $query = $this->db->where('news_class',$classid)->order_by('id','DESC')->limit($offset,$limit)->get('dili_u_m_news');
                        return $query->result();
                }


tlerbao 发表于 2012-5-28 17:10:52

已经解决
$this->db->limit();
方法和原声sql的limit生成的结果是反的
limit(10,20)会变成limit(20,10)

justdoit 发表于 2012-5-29 09:57:21

解决分页问题,最重要的要注意三个地方:第一个地方就是取出符合结果集的条数,用到sql1;第二个地方就是取出符合结果的信息,用到sql2,第三个地方就是分页的调转地址$url;在调式的时候一定要及时的把$sql1和$sql2和$url及时的输出,就能很方便的看出错误了。{:1_1:}

jami918 发表于 2012-6-1 11:25:00

支持藤椅的见解!
页: [1]
查看完整版本: 我这个分页写的有什么问题么?怎么就不行呢!!!