我认为在CI文档中向用户显示它似乎并不容易 我花了很多时间来寻找问题和问题。框架php应该很容易,快速做到吗?这就是他们存在的原因?
这是我的代码:
$config['base_url'] = site_url('admin/index/page/');
$config['uri_segment'] = 4;
Mysql Sql结果:
SELECT b.*, a.adCampaignTitle FROM ads a, sms b WHERE b.`smsAd_ID`=a.ad_ID LIMIT 4, 20
如在sql输出中所见,uri_segment就像一个整数值。而已。而且创建的任何页面分页,sql输出都是一样的! 当我尝试它时:
$offset = $this->uri->segment(4);
SQL工作正常,但分页(创建链接)无法正常工作。第一页的链接在每个页码中都消失了(只是)。
* 如果你真的对这个问题有所了解,请发帖。我像阿纳斯塔西娅一样生病和疲惫......
答案 0 :(得分:4)
这个问题是2岁。我有一个类似的问题,谷歌搜索到这个页面。看来,如果有人遇到类似的问题,它还没有得到回答。你可以使用
$config['uri_segment'] = $this->uri->total_segments();
要解决您的分页“链接”(上一个,1,2,3,4,下一个)错误,如上所述,您的第一页分页将无法正常工作。
答案 1 :(得分:1)
我无法确定这是你的问题,但我相信你需要说出有多少行,以便分页正常工作。
所以添加:$config["total_rows"] = /*total number of records returned by the query, without the limit */
并查看是否有帮助。
另请阅读this article,了解有关如何正确设置的一些想法。
答案 2 :(得分:0)
我正在使用HMVC,我在分页上遇到了同样的问题。但是我设法通过使用段3使用HMVC或仅使用MVC在CI中工作。当我使用段4时它不起作用。我不知道为什么。这也是我的大问题,因为我真的需要使用段号4.我回家这个bug可以在CI的下一个版本中解决。
答案 3 :(得分:0)
使用HMVC:段不同的问题
链接:[domain] .com / admin / logs / log_list / 10/1
解决了:
$config['uri_segment'] = 5;
完整代码:
public function data_count($sql){
$query = $this->db->query($sql);
return $query->num_rows();
}
public function get_list($sql,$url,$show,$page){
$list = array();
$this->load->library('pagination');
$this->load->helper('url');
$total = $this->data_count($sql);
$config = array(
'base_url' => $url,
'total_rows' => $total,
'per_page' => $show,
'num_links' => 5,
'use_page_numbers' => true,
'page_query_string' => false,
'uri_segment' => 5,
'full_tag_open' => '<ul class="pagination pull-right">',
'full_tag_close' => '</ul>',
'first_link' => '<<',
'first_tag_open' => '<li>',
'first_tag_close' => '</li>',
'last_link' => '>>',
'last_tag_open' => '<li>',
'last_tag_close' => '</li>',
'next_link' => '>',
'next_tag_open' => '<li>',
'next_tag_close' => '</li>',
'prev_link' => '<',
'prev_tag_open' => '<li>',
'prev_tag_close' => '</li>',
'cur_tag_open' => '<li class="active"><a>',
'cur_tag_close' => '</a></li>',
'num_tag_open' => '<li>',
'num_tag_close' => '</li>'
);
$this->pagination->initialize($config);
$pagination = $this->pagination->create_links();
$list["pagination"] =$pagination;
if(!empty($page)){ $start = ($page*$show)-$show; } else { $start = 0; }
$query = $this->db->query($sql." limit ".$start." , ".$show);
if($query->num_rows()>0){
$list["list"] = $query->result_array();
}
else{
$list["list"] = "";
}
$list["total"] = $total;
return $list;
}