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

[已解决] 求助 为什么我的分页仅仅显示出三页呢???

[复制链接]
发表于 2010-10-20 22:52:47 | 显示全部楼层 |阅读模式

我的数据库图片

我的数据库图片

index显示的

index显示的
这是我的控制 文件的代码:
<?php
class Message extends Controller{                         
        function Message() {
                                parent::Controller();
                $this->load->helper('form');
                $this->load->helper('url');
                $this->load->database();
               }       
        function index(){
              $this->load->library('pagination');
                       $this->load->model('Mbook');   
              $config['base_url']=base_url().'index.php/message/index/';
                  $config['total_rows']=$this->db->count_all('messages');
                  $config['per_rows']='5';
                  $config['full_tag_open'] = '<p >';
                  $config['full_tag_close'] = '</p>';
                  $this->pagination->initialize($config);
              $data['mgs_list']=$this->Mbook->mgs_page('messages',$config['per_rows'],$this->uri->segment(3));
             $this->load->view('index',$data);
        }
}
?>
下面是我的模型文件的代码:
<?php
class Mbook extends Model{

            function Mbook() {
                  parent::Model();
           }   
        function mgs_page($tablename,$pagesize,$pageval){          
             $this->db->order_by("id", "desc");
                     $query = $this->db->get($tablename,$pagesize,$pageval);
                     return $query->result();        
        }
}
?>
最后是view页面的代码:
<?php foreach($mgs_list as $row):?>
<table align="center" width="80%" bgcolor="#66CCFF">
    <tr>
              <td>标题:<?=$row->title;?> </td>
                 
        </tr>
         <tr>
              <td>  &nbsp;&nbsp;&nbsp;<?=$row->content;?></td>                 
        </tr>
        <tr>
              <td align="right">留言者:<?=$row->name;?> &nbsp;&nbsp;留言时间:<?=$row->date;?></td>                 
        </tr>

</table>
<?php endforeach;?>
<?php echo $this->pagination->create_links();?>

主要代码都在这了 不知道有什么问题  我的数据库里面有35条记录,可是我的index.php的分页只显示出三页,不管我的那个$config['per_rows']等于几都只是显示出三页的内容来,我是新手,不懂得地方很多,希望那位大哥给小弟细心指点下  谢谢啦!!!!
发表于 2010-10-21 10:31:45 | 显示全部楼层
CI 的分页类就是这样,只显示前三页,只有你点击第三页的时候才会出现后面的内容。
这就是老外的习惯,除非你自己修改分页类源码,否则只能接受这样的形式,呵呵
 楼主| 发表于 2010-10-21 10:39:07 | 显示全部楼层
回复 2# Hex


    可是我点击第三页了    也不会出现后面的页码  不明白为什么???你是说我的程序没有问题么??
发表于 2010-10-21 11:00:22 | 显示全部楼层
$config['per_rows']='5';
改成
$config['per_page']='5';
发表于 2010-10-21 11:41:56 | 显示全部楼层
除了改$config['per_page'], 如果还有问题的话,请查看你的base_url是否设置正确,在config.php文件中,改了这两个地方后,在我电脑上是可以分页了的
 楼主| 发表于 2010-10-21 13:23:13 | 显示全部楼层
本帖最后由 小凡 于 2010-10-21 13:29 编辑

回复 4# Hex


    谢谢你 按照你说的问题解决了
发表于 2010-10-26 18:34:58 | 显示全部楼层
$config['num_links'] = 5;
设置这个为5或者10或者你想一开始就显示的页数,就有你想要的效果了!
发表于 2010-12-23 22:39:34 | 显示全部楼层
我也遇到同样的问题了。 links 总是 显示第一页  数据是第二页的,但是第二页还能点。
PHP复制代码
$this->load->database();
                $this->load->helper('url');
                $this->load->library('pagination');
                $config['base_url'] = base_url().URI_INDEX.'admin/news/manage/';
                $config['total_rows'] = $this->db->count_all('news');
                $config['per_page'] = '5';
                //$config['num_links'] = 5;
                $config['full_tag_open'] = '<p>';
                $config['full_tag_close'] = '</p>';
 
                $this->pagination->initialize($config);
 
                $data['results'] = $this->News_model->select_limit($config['per_page'],$this->uri->segment(4));
 
                // load the HTML Table Class
                $this->load->library('table');
                $this->table->set_heading('Id', 'Type', 'Title', 'Top', 'content', 'date_top', 'date_add');
 
                // load the view
                $this->load->view('admin/news_list', $data);
复制代码
发表于 2010-12-23 22:40:47 | 显示全部楼层
我的Controller 在 子文件夹下 所以写 segment(4)  跟这个没关系
发表于 2010-12-23 23:03:54 | 显示全部楼层
回复 9# ckwn


    你少写了
PHP复制代码
$config['uri_segment'] = 4;
复制代码

仔细看手册和我发布的教程你就能看到相关内容。

本版积分规则