Ich versuche, meine Paginierung mit Suche, um zu sehen, warum in den Grundzustand zurückkehrt hält, wenn ich zur Seite 2.CodeIgniter Paginierung mit Suche zeigt keine zweite Seite
ich einen Blick auf einige Beispiele genommen haben, dass Ich habe gesagt, dass ich meine Suchbegriffe in Sitzungsdaten einfügen soll, damit die Suche beibehalten werden kann, aber bis jetzt hatte ich kein Glück, diese Arbeit zu machen. Mein Code kommt teilweise von dieser Seite: https://dzone.com/articles/how-paginate-search-results und ich bin mir nicht sicher, wie richtig diese Methode ist.
Das ist, was ich bisher haben
Controller:
public function date_function(){
$this->load->library('form_validation');
$this->form_validation->set_error_delimiters('<div class="error">', '</div>');
$date_start = $this->table_DateStartHandler($this->input->post('date_start'));
$date_end = $this->table_DateEndHandler($this->input->post('dateend'));
$current_status = $this->table_StatusHandler($this->input->post('current_status'));
$config['base_url'] = base_url('/Report/date_function');
$config['total_rows'] = $this->ControlModel->count_Date($date_start,$date_end,$current_status);
$config['per_page'] = 40;
$config['uri_segment'] = 4;
$config['full_tag_open'] = '<ul class="pagination">';
$config['full_tag_close'] = '</ul>';
$config['prev_link'] = '<';
$config['prev_tag_open'] = '<li>';
$config['prev_tag_close'] = '</li>';
$config['next_link'] = '>';
$config['next_tag_open'] = '<li>';
$config['next_tag_close'] = '</li>';
$config['cur_tag_open'] = '<li class="current"><a href="#">';
$config['cur_tag_close'] = '</a></li>';
$config['num_tag_open'] = '<li>';
$config['num_tag_close'] = '</li>';
$config['first_tag_open'] = '<li>';
$config['first_tag_close'] = '</li>';
$config['last_tag_open'] = '<li>';
$config['last_tag_close'] = '</li>';
$config['first_link'] = '<<';
$config['last_link'] = '>>';
$this->pagination->initialize($config);
$page = ($this->uri->segment(4)) ? $this->uri->segment(4) : 0;
$message['datatable'] = $this->ControlModel->getSubmissions_Date($config["per_page"], $page,$date_start,$date_end,$current_status);
$message['links'] = $this->pagination->create_links();
$message['counter'] = $config['total_rows'];
//$message['datatable'] = $this->ControlModel->getSubmissions();
$message['message'] = '';
$this->load->view('control_report',$message);
}
Die Funktionen, wo ich überprüfen, ob es in der Sitzung
public function table_StatusHandler($current_status){
if($current_status){
$this->session->set_userdata('current_status', $current_status);
return $current_status;
}elseif($this->session->set_userdata('current_status')){
$current_status = $this->session->userdata('current_status');
return $current_status;
}else{
$current_status = "";
return $current_status;
}
}
public function table_DateStartHandler($date_start){
if($date_start){
$this->session->set_userdata('date_start', $date_start);
return $date_start;
}elseif($this->session->set_userdata('date_start')){
$date_start = $this->session->userdata('date_start');
return $date_start;
}else{
$date_start = "";
return $date_start;
}
}
public function table_DateEndHandler($date_end){
if($date_end){
$this->session->set_userdata('date_end', $date_end);
return $date_end;
}elseif($this->session->set_userdata('date_end')){
$date_end = $this->session->userdata('date_end');
return $date_end;
}else{
$date_end = "";
return $date_end;
}
}
Hoffnung jemand Sie Benutzerdaten ist, kann helfen danken
Hey, Sie müssen '' '' '' '' '' '' searchString''' auf jeder Seitenumbruch Link klicken Sie mit jQuery. – kishor10d
nicht wahr? muss ich jquery verwenden? Ich würde gerne versuchen, so weit wie möglich auf PHP zu bleiben – JianYA
und Sie brauchen nur ein kleines Stück Code (jQuery). Wenn Sie das Klicken der Seitenzahl verwalten, um das Formular zu senden, können Sie es tun. – kishor10d