Php CodeIgniter向搜索结果添加分页
我有一个带有分页的数据表,我刚刚添加了一个搜索函数。目前我的搜索结果没有分页。我尝试将索引中的配置添加到搜索功能中,但没有成功。我想知道我是否遗漏了什么。如果有人能看一下,我会很感激的 控制器Php CodeIgniter向搜索结果添加分页,php,codeigniter,pagination,Php,Codeigniter,Pagination,我有一个带有分页的数据表,我刚刚添加了一个搜索函数。目前我的搜索结果没有分页。我尝试将索引中的配置添加到搜索功能中,但没有成功。我想知道我是否遗漏了什么。如果有人能看一下,我会很感激的 控制器 public function index(){ $config['base_url'] = base_url('/Control/Users'); $config['total_rows'] = $this->UserModel->countUsers();
public function index(){
$config['base_url'] = base_url('/Control/Users');
$config['total_rows'] = $this->UserModel->countUsers();
$config['per_page'] = 30;
$config['uri_segment'] = 3;
$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(3)) ? $this->uri->segment(3) : 0;
$data['datatable'] = $this->UserModel->getAllUsers($config["per_page"], $page);
$data['links'] = $this->pagination->create_links();
$data['counter'] = $config['total_rows'];
$data['message']='';
$this->load->view('control/controlMenu/navigationLink');
$this->load->view('control/controlUsers/manageUsers',$data);
$this->load->view('control/controlMenu/navigationJquery');
}
public function searchUser(){
$inputsearchterm = $this->input->post('inputsearchterm');
if($inputsearchterm!=""){
$data['datatable'] = $this->UserModel->searchUser($inputsearchterm);
$data['links'] = '';
$data['counter'] = $this->UserModel->countSearchUser($inputsearchterm);
$data['message']='';
$this->load->view('control/controlMenu/navigationLink');
$this->load->view('control/controlUsers/manageUsers',$data);
$this->load->view('control/controlMenu/navigationJquery');
}else{
redirect('Control/Users');
}
}
我认为您应该添加分页库或检查模型中的活动查询添加视图的外观(代码和图像),错误是什么,以及需要执行的操作您好,谢谢您的回复。我已经添加了我的观点。没有错误。我只是想知道如何为我的搜索结果添加分页,因为目前,它没有任何分页,如果我得到50个结果,它将在一个页面中。我应该像添加索引一样添加它吗?是的,我尝试过这样做,但不起作用。你能举个例子吗?我想我的版本没有让我在模型中看到你的函数。嗨,我添加了模型
<?php echo form_open_multipart('Control/Users/searchUser','class="inputform"');?>
<div class="form-group">
<label for="inputsearchterm">Search</label>
<input type="text" class="form-control" id="inputsearchterm" name="inputsearchterm" placeholder="Search">
</div>
<button type="submit" class="btn btn-primary">Search</button>
<?php echo form_close(); ?>
<table class="table">
<thead>
<tr>
<td>Name</td>
<td>IC Number</td>
<td>Passport Number</td>
<td>Email</td>
<td>Phone</td>
</tr>
</thead>
<tbody>
<?php
if(!empty($datatable)){
foreach ($datatable as $dataitem):
$id = $dataitem->id;
?>
<tr>
<td class="name"><?php echo $dataitem->firstname." "; ?><?php echo $dataitem->lastname; ?></td>
<td class="icnumber"><?php echo $dataitem->icNumber; ?></td>
<td class="passportnumber"><?php echo $dataitem->passportNumber; ?></td>
<td class="email"><?php echo $dataitem->email; ?></td>
<td class="phone"><?php echo $dataitem->phone; ?></td>
<td><a class="edituser" href="<?php echo base_url();?>Control/UserDetail/<?php echo $id; ?>/<?php echo "true"; ?>"><i class="fa fa-pencil-square-o" aria-hidden="true"></i>Edit</a></td>
<td><a class="deleteuser" href="<?php echo base_url();?>Control/Users/Users/deleteUser/<?php echo $id; ?>"><i class="fa fa-trash" aria-hidden="true"></i>Delete</a></td>
</tr>
<?php
endforeach;
}
?>
</tbody>
</table>
<p><?php echo $this->session->flashdata('Table'); ?></p>
<?php echo $links; ?>
<p><?php echo $this->session->flashdata('Form'); ?></p>
</div>
public function searchUser($userdetail){
$this->db->select('*');
$this->db->from('Users');
$this->db->like('firstname',$userdetail);
$this->db->or_like('lastname',$userdetail);
$this->db->or_like('email',$userdetail);
$this->db->or_like('phone',$userdetail);
$this->db->or_like('icNumber',$userdetail);
$this->db->or_like('passportNumber',$userdetail);
$query = $this->db->get();
if($query->num_rows()>0){
return $query->result();
}else{
return $query->result();
}
}
public function countSearchUser($userdetail){
$this->db->select('*');
$this->db->from('Users');
$this->db->like('firstname',$userdetail);
$this->db->or_like('lastname',$userdetail);
$this->db->or_like('email',$userdetail);
$this->db->or_like('phone',$userdetail);
$this->db->or_like('icNumber',$userdetail);
$this->db->or_like('passportNumber',$userdetail);
$query = $this->db->count_all_results();
if($query>0){
return $query;
}else{
return 0;
}
}