我认为codeigniter分页库中存在一个错误。出于某种原因,当我生成分页链接时,它会生成以下链接:
1 2 3 4
页面3
链接到4
。
这是配置变量代码,以防任何人好奇:
$config['base_url'] = base_url() . "index.php/test/$query_string";
$config['total_rows'] = $search_results->num_rows();
$config['per_page'] = $items_per_page;
以下是我的查询字符串示例:
?q=sample_query_string&per_page=1
有没有办法解决这个问题?
答案 0 :(得分:2)
我不打扰查询字符串,使用直接从url / controller传递的变量。另外,我认为您的基本网址是错误的。它应该是(假设您在默认索引功能页面上)
$config['base_url'] = site_url("test/index");
您不需要将vars放在基本URL的末尾。如果你启用了查询字符串(我不认为你这样做),这将是相同的,CI应该处理所有的重命名,只是提取变量会有所不同。
所以控制器应该是
class Test extends Controller {
function index($offset = 0)
{
$this->load->library('pagination');
$config['base_url'] = site_url("test/index");
$config['total_rows'] = $search_results->num_rows();
$config['per_page'] = 20;
$config['uri_segment'] = 3;
$this->pagination->initialize($config);
// DO OTHER STUFF
}
}
您可以在配置中设置限制。你需要从URL做到吗?