簡體   English   中英

Codeigniter分頁結果顯示每頁項目超過所選項目

[英]Codeigniter pagination results shows more than selected per page items

我是Codeigniter的新手,正在這里尋求幫助。

我正在分頁地制作一個測試應用程序。 我選擇了$config['per_page'] = 1; 但它並沒有顯示首頁上的一個列表,而是顯示了所有列表。

我的控制器:

public function pagination(){
$keyword = $this->input->post('search[1]');
$main_keyword = $this->search_model->get_city_id_by_input($keyword);

    $config['base_url'] = base_url().'search/search-results/';
    $config['total_rows'] = $this->search_model->total_number_of_rows($main_keyword);
    $config['per_page'] = 1;
    $config['use_page_numbers'] = TRUE;
    $config['num_links'] = $this->search_model->total_number_of_rows($main_keyword);
    $config['cur_tag_open'] = ' ';
    $config['next_link'] = 'Next';
    $config['prev_link'] = 'Previous';

$this->pagination->initialize($config);
$data['results'] = $this->search_model->get_search_results($main_keyword, $config['per_page'], $this->uri->segment(3));

    $this->load->view('view',$data);
}

模型:

function get_city_id_by_input($keyword){
    $this->db->select('id');
    $this->db->from('vbc_city');
    $this->db->where('v_city_name', $keyword);
    $query = $this->db->get();
    $query_result = $query->result_array();
    return $query_result();
}
  public function total_number_of_rows($main_keyword) {
      $this->db->select('vbc_item_id');
      $this->db->from('vbc_vacation_item_attri');
      $this->db->where('v_item_city', $main_keyword);
      $query = $this->db->get();
      return $query->num_rows();
}
  public function get_search_results($main_keyword) {
      $this->db->select('*');
      $this->db->from('vbc_vacation_item_attri');
      $this->db->where('v_item_city', $main_keyword);
      $query = $this->db->get();
      $result = $query->result();
      return $result;
    }

請幫忙。

比較您對函數的調用

$this->search_model->get_search_results($main_keyword, $config['per_page'], $this->uri->segment(3));

和簽名

get_search_results($main_keyword)

當然,您將獲得所有結果。

我想你應該把你的函數轉換成這樣

public function get_search_results($main_keyword, $perpage, $offset) {
  $this->db->select('*');
  $this->db->from('vbc_vacation_item_attri');
  $this->db->where('v_item_city', $main_keyword);
  $this->db->limit($perpage, $offset);
  $query = $this->db->get();
  $result = $query->result();
  return $result;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM