看论坛很多朋友说CI带条件分页很麻烦,这里贴出我的一点总结,来自我做的实际项目中,希望对你有帮助。
在CI框架中,如果根据条件查询一些结果,并且对结果进行分页,如果点击下一页,可能会导致下一页显示的就是不是符合条件的结果集了,而
只是显示全部的结果,就像没有按条件显示一样。
可以这样处理这个问题:
$config['base_url'] = 'http://example.com/index.php/test/page/';
这里有个base_url,关键就在这里
当分页以后,鼠标移到分页连接上,会看到这样的超链接:
http://example.com/index.php/test/page/2
这里会自动给加上偏移量,这里是2。
再进一步,如果到查询条件,例如
http://example.com/index.php/test/page/aUser/admin/2
这里'aUser'和'admin'是查询条件,2是偏移量
那么可以在配置base_url的时候这样写
$config['base_url'] ="
http://example.com/index.php/test/page/$username/$type";
当然了page方法也必须要接受参数
function page($username,$type){}
这样的话,就可以每次根据条件显示结果了。
至于参数何来,在首次生成base_url的时候,那些参数就带上了,生成的分页链接也自然是:
http://example.com/index.php/test/page/aUser/admin/2
这样在点击的时候也会自动将搜索的关键字传递到方法中去。
希望对你有所帮助,呵呵。