我有两个查询结果,一个课程列表和一个用户配置文件列表。这些查询彼此无关。
我想在同一视图中显示课程和用户个人资料。如何为每个查询设置LIMIT和OFFSET,以便分页工作正常?
分页$ config值会是什么样的?
我尝试了什么!
我的模型中有一个名为 tabel_list()的方法,它返回记录和返回的记录总数。
课程:
$rows = $this->main_model->tabel_list($this->limit , $this->uri->segment(3), $joins, $order_by, $table, $select_fields, $condit, $group_by);
$data['total_rows'] = $rows['rows']['total'];
$records = $rows['list'];
$data['products'] = $records;
对于用户个人资料:
如果出现问题,请检索用户配置文件以及视图。
$data['tutors'] = $tutor_records['list'];
$individual_rows = $tutor_records['rows']['total'];
$final_num_rows = $rows['rows']['total'] + $individual_rows;
$data['total_rows'] = $final_num_rows;
配置:
$config['total_rows'] = $data['total_rows'];
$config['base_url'] = base_url() . "home/courses/";
$config['per_page'] = $this->limit;
$config['uri_segment'] = 3;
在一个视图中使用两个结果集并使用一个分页。帮助
答案 0 :(得分:0)
两个想法:
在您的页面上放置两个分页,每个分页一个。
用空行填充较小的表并对您的限制进行后期计算 查询。
但听起来,你的问题出在输出和分页之前。
答案 1 :(得分:-1)
所以,这是解决我问题的方法。
我希望在一个视图中有两组结果。 我希望在一个页面中显示20条记录。所以,
$config['per_page'] = 20
如果用户只想要课程列表,则只运行一个查询,否则将显示两个查询结果。什么应该是查询的偏移?
好吧,一个简单的条件检查/标志可以确定用户是否想要两组结果,如果他/她确实需要两组结果,则将当前页面索引除以2.因此每个结果将得到10个结果在页面上设置。
if(user wants two sets of results on the same page))
{
$offset = $this->uri->segment(3) / 2;
}
如果用户只想要一组结果,
$offset = $this->uri->segment(3);
现在在数据库查询中使用20的限制和$ offset。
希望这有助于某人。