PHP Codeigniter分页缺少第一个和最后一个

时间:2016-04-13 07:56:02

标签: php codeigniter

我有用于分页的Codeigniter设置,除了没有显示First和Last选项外,它正常工作。它确实显示了上一个和下一个。

My Current Pagination

我已按如下方式设置此配置:

$config = array();
$config["base_url"] = base_url() . "index.php/main";
$config["total_rows"] = $this->Pages_model->user_count();
$config["per_page"] = 15;
$config["uri_segment"] = 2;
$num_pages = $config["total_rows"] / $config["per_page"];
$config["num_links"] = round($num_pages);
$config['full_tag_open'] = '<ul class="pagination">';
$config['full_tag_close'] = '</ul>'; 
$config['cur_tag_open'] = '<li class="active"><a href="#">';
$config['cur_tag_close'] = '</a></li>';
$config['first_link'] = '&lt;&lt;';
$config['first_tag_open'] = '<li>';
$config['first_tag_close'] = '</li>';
$config['last_link'] = '&gt;&gt;';
$config['last_tag_open'] = '<li>';
$config['last_tag_close'] = '</li>';
$config['next_link'] = '&gt;';
$config['next_tag_open'] = '<li>';
$config['prev_link'] = '&lt;';
$config['prev_tag_open'] = '<li>';
$config['prev_tag_close'] = '</li>';
$config['num_tag_open'] = '<li>';
$config['num_tag_close'] = '</li>';
$this->pagination->initialize($config);
$seg = ($this->uri->segment(2)) ? $this->uri->segment(2) : 0;
$data['loaded'] = $this->Content_model->loadVisitors($config["per_page"], $seg);
$data["links"] = $this->pagination->create_links();
$this->load->view('pages/'.$page, $data);

我缺少什么才能拥有第一个和最后一个功能?我似乎无法在the docs.

中找到任何内容

编辑:还要提一下,我的观点如下:

<div class="container text-center">
    <div class="row">
        <div class="col-lg-12">
            <?php echo $links; ?>
        </div>
    </div>
</div>

当我检查页面时,这就是它所显示的内容:

<div class="col-lg-12">
<ul class="pagination">
    <li><a href="index.php/main" data-ci-pagination-page="1" rel="prev">&lt;</a></li>
    <li><a href="index.php/main" data-ci-pagination-page="1" rel="start">1</a></li>
    <li class="active"><a href="#">2</a></li>
    <li><a href="index.php/main/30" data-ci-pagination-page="3">3</a></li>
    <li><a href="index.php/main/45" data-ci-pagination-page="4">4</a></li>
    <li><a href="index.php/main/60" data-ci-pagination-page="5">5</a></li>
    <li><a href="index.php/main/30" data-ci-pagination-page="3" rel="next">&gt;</a></li>
</ul>       
</div>

6 个答案:

答案 0 :(得分:1)

我现在有同样的问题;我想如果你只有几页而且这些页面已经有编号的链接,第一个或最后一个将消失。

答案 1 :(得分:1)

  

问题必须在核心文件中,更改以下内容   核心文件并试一试。   系统/库/ pagination.php

第231行 - 第一个链接

$output .= $this->first_tag_open.'<a '.$this->anchor_class.'href="'.$first_url.'">'.$this->first_link.'</a>'.$this->first_tag_close;
  

$output .= $this->first_tag_open.'<a '.$this->anchor_class.'href="'.$first_url.$this->suffix.'">'.$this->first_link.'</a>'.$this->first_tag_close;

第285行 - 1个链接

$output .= $this->num_tag_open.'<a '.$this->anchor_class.'href="'.$this->first_url.'">'.$loop.'</a>'.$this->num_tag_close;
  

$output .= $this->num_tag_open.'<a '.$this->anchor_class.'href="'.$this->first_url.$this->suffix.'">'.$loop.'</a>'.$this->num_tag_close;
  

在$ this-&gt; first_url值之后添加$ this-&gt;后缀变量我想你   不能'破解'$ this-&gt; first_url值来连接   $ this-&gt;后缀,它将破坏上面的'if'决定   我希望这对你有用。

答案 2 :(得分:0)

试试这个:

$config['first_link'] = 'First'; 
$config['last_link'] = 'Last';

答案 3 :(得分:0)

  

要在第一个和最后一个链接中显示文字,您应该将字符串放在引号中。

$config['first_link'] = 'First';
$config['last_link'] = 'Last';
  

您可以在此处获取适当的文档   https://ellislab.com/codeigniter/user-guide/libraries/pagination.html

答案 4 :(得分:0)

事实证明这段代码导致它不显示第一个和最后一个

<asp:GridView ID="gvOrders" DataKeyNames="OrderID,ClientID,PaymentTypeID" ... >

删除此代码可行。幸运的是,我不一定需要这个,但如果有人知道为什么这会阻止它工作,我会很感激对此做出回应。

答案 5 :(得分:0)

你必须包括最后一个和第一个标签以及它们的开始和结束标签......

第一个标签.....

TopicCommand.scala

为最后一个标签.....“

$config['first_link'] = 'First';
$config['first_tag_open'] = '<li>'
$config['first_tag_close'] = '</li>';