Tôi đang đập đầu trên bàn phím để tìm cách sử dụng chuỗi truy vấn với phân trang mỗi thứ hoạt động tốt cho đến khi liên kết trang FIRST
xuất hiện.Sử dụng phân trang với chuỗi truy vấn cho biểu mẫu tìm kiếm có phương thức được đặt trong mã vạch
Tất cả các liên kết khác có chuỗi truy vấn nối vào cuối của họ nhưng liên kết First
trang misses the query string
Liên kết cho các trang khác:
http://localhost/index.php/search/index/9?q=some_Data_From_Form
Liên kết trang FIRST hiển thị các liên kết mà tôi đã thiết lập trong các $config['base_url']
biến:
http://localhost/index.php/search/index/
các hình thức tìm kiếm:
$attributes=array('id'=>'search','class'=>'clearfix','method'=>'get');
echo form_open(base_url().'index.php/search/index',$attributes);
Có hộp văn bản có tên được đặt là q
.
tôi stumbled khi một vài câu trả lời/ví dụ trên stackoverflow và đây là những gì tôi đã viết:
Các tập tin cấu hình Pagination có
$config['per_page'] = '1';
$config['uri_segment'] = '3';
và những người khác như num_tag_open
, vv
Lớp điều khiển :
class Search extends CI_Controller {
public function Search(){
parent::__construct();
$this->load->helper('url');
$this->load->helper('form');
$this->load->library('input');
$this->load->model('blog_model');
$this->load->library('pagination');
$this->config->load('pagination'); //other pagination related config variables
}
public function index($page=0){
$q = trim($this->input->get('q'));
if(strlen($q)>0){
//validate input and show data
$config['enable_query_strings']=TRUE;
$getData = array('q'=>$q);
$config['base_url'] = 'http://localhost/index.php/search/index/';
$config['suffix'] = '?'.http_build_query($getData,'',"&");
$data['rows'] = $this->blog_model->getBySearch($q,$this->config->item('per_page'),$page);
if(empty($data['rows'])){
//no results found
}else{
//match found
$config['total_rows'] = $this->blog_model->getBySearchCount($q);
$this->pagination->initialize($config);
$link->linkBar = $this->pagination->create_links();
$this->load->view('myview',array($data,$link));
}
}else if(strlen($q)==0){
//warn user for the missing query and show a searchbox
}
}
}
SOS! Các bạn, hãy giúp tôi ra
+1 cho đầu và bàn phím: D –