我有一个应用程序,用户可以在其中获取记录以进行报告。但是我对使用 jquery 分页和 mysql 分页(LIMIT,OFFSET)感到困惑。
因为 jquery 分页需要没有限制的所有记录,所以分页发生在客户端,这可能会减慢查询速度。
mysql 可以在哪里使用限制(我使用的是 codeigniter 框架),但是每次我点击分页时,它都会 ping 数据库以获取下一组数据,并且 mysql 分页正在创建重复记录。
有没有好的快速分页方法,如果有,请建议我。
谢谢你......
我有一个应用程序,用户可以在其中获取记录以进行报告。但是我对使用 jquery 分页和 mysql 分页(LIMIT,OFFSET)感到困惑。
因为 jquery 分页需要没有限制的所有记录,所以分页发生在客户端,这可能会减慢查询速度。
mysql 可以在哪里使用限制(我使用的是 codeigniter 框架),但是每次我点击分页时,它都会 ping 数据库以获取下一组数据,并且 mysql 分页正在创建重复记录。
有没有好的快速分页方法,如果有,请建议我。
谢谢你......
我是这样分页的......
public function page($category_id)
{
$result = $this->model_file->model_function($category_id);
$start_index = 0;
$total_rows = count($result);
$items_per_page = 10;
$filtered = array_splice($result,$start_index,$items_per_page);
$model['data'] = $filtered;
$model['page_link'] = create_page_links (base_url()."/controller_file_name/page", $items_per_page, $total_rows);
$this->load->view('view_file_name_path',$model);
}
function create_page_links($base_url, $per_page, $total_rows) {
$CI = & get_instance();
$CI->load->library('pagination');
$config['base_url'] = $base_url;
$config['total_rows'] = $total_rows;
$config['per_page'] = $per_page;
$CI->pagination->initialize($config);
return $CI->pagination->create_links();
}