【问题标题】:Error using pagination in CodeIgniter在 CodeIgniter 中使用分页时出错
【发布时间】:2014-06-09 10:10:19
【问题描述】:

我在 CodeIgniter 中遇到了分页问题: 我的路线是:

$route['tv/bloc']                     = "tv/about";
$route['tv/bloc/page/(:any)']        = "tv/about";
$route['tv/bloc/(:any)']              = "tv/view/$1";

在我的控制器中:

$config["base_url"] = base_url()."tv/bloc/page/";
$config["total_rows"] = $this->site_tv->record_count();
$config["per_page"] = 24;
$config["uri_segment"] = 4;
$choice = $config["total_rows"] / $config["per_page"];
$config ["num_links"] = round($choice);
$this->pagination->initialize($config);
$page = ($this->uri->segment(4))? $this->uri->segment(4) : 0;

分页在分页的第 2、3 和 4 页上工作正常,但是当我想返回到分页的第一页时,我收到一个错误,因为控制器正在尝试搜索 /page 的 url...

有什么办法可以帮助我解决我的问题吗?

【问题讨论】:

  • 请给出为第1页和第2页生成的URL

标签: php codeigniter codeigniter-2 codeigniter-url codeigniter-routing


【解决方案1】:

手动设置首页网址:

$config['first_url'] = 'tv/bloc/page/1'; 
// Your code..
$config["base_url"] = base_url()."tv/bloc/page/";
$config["total_rows"] = $this->site_tv->record_count();
//  ....
$this->pagination->initialize($config);

【讨论】:

    【解决方案2】:

    保存此 sn-p 以备将来使用:

        $paging_config = array();
        $paging_config["base_url"] = site_url() . '/p/';
        $paging_config["total_rows"] = $this->qosasah_model->snippets_count();
        $paging_config["per_page"] = 10;
        $paging_config["uri_segment"] = 2;
        $paging_config['use_page_numbers']  = FALSE;
    
        /* This Application Must Be Used With BootStrap 3 *  */
        $paging_config['full_tag_open'] = "<ul class='pagination pagination-right'>";
        $paging_config['full_tag_close'] ="</ul>";
        $paging_config['num_tag_open'] = '<li>';
        $paging_config['num_tag_close'] = '</li>';
        $paging_config['cur_tag_open'] = "<li class='disabled'><li class='active'><a href='#'>";
        $paging_config['cur_tag_close'] = "<span class='sr-only'></span></a></li>";
        $paging_config['next_link'] = 'Next';
        $paging_config['prev_link'] = 'Previous';       
        $paging_config['next_tag_open'] = "<li>";
        $paging_config['next_tagl_close'] = "</li>";
        $paging_config['prev_tag_open'] = "<li>";
        $paging_config['prev_tagl_close'] = "</li>";
        $paging_config['first_link'] = 'First';     
        $paging_config['first_tag_open'] = "<li>";
        $paging_config['first_tagl_close'] = "</li>";
        $paging_config['last_link'] = 'Last';       
        $paging_config['last_tag_open'] = "<li>";
        $paging_config['last_tagl_close'] = "</li>";
    

    注意:这与 bootstrap 3 完美配合。因此,如果您不使用 bootstrap,您可以简单地删除不需要的配置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多