Set pagination in searching data in table [ codeigniter ]


Set Peginaation in Searching in codeigniter


Controller Code:
<?php
if (!defined('BASEPATH')) exit('No direct script access allowed');
class User extends CI_Controller {
function __construct() {
// Call the Model constructor
parent::__construct();
$this->load->helper('url');
$this->load->model('nj_user');
$this->load->library("session");
$username = $this->session->userdata('username');
if (empty($username)) {
redirect($this->config->base_url() . 'login');
}
$this->load->library("pagination");
}
public function index() {
redirect($this->config->base_url() . 'user/view');
}
//sarching
public function searchterm_handler($searchterm) {
if ($searchterm) {
$this->session->set_userdata('searchterm', $searchterm);
return $searchterm;
} elseif ($this->session->userdata('searchterm')) {
//print_r ($_SESSION['searchterm']);exit;
$searchterm = $this->session->userdata('searchterm');
return $searchterm;
} else {
$searchterm = "";
return $searchterm;
}
}
public function searh()
{
$this->load->view('layout/header');
$this->load->view('layout/sidebar');
//pagination//
$searchterm = $this->searchterm_handler($_POST, TRUE);
$config = array();
$config["base_url"] = $this->config->base_url() . "user/searh";
$config["total_rows"] = $this->nj_user->count_search($searchterm);
$config["per_page"] = 3;
$config["uri_segment"] = 3;
$choice = $config["total_rows"] / $config["per_page"];
$config["num_links"] = round($choice);
//config for bootstrap pagination class integration
$config['full_tag_open'] = '<ul class="pagination">';
$config['full_tag_close'] = '</ul>';
$config['first_link'] = false;
$config['last_link'] = false;
$config['first_tag_open'] = '<li>';
$config['first_tag_close'] = '</li>';
$config['prev_link'] = '&laquo';
$config['prev_tag_open'] = '<li class="prev">';
$config['prev_tag_close'] = '</li>';
$config['next_link'] = '&raquo';
$config['next_tag_open'] = '<li>';
$config['next_tag_close'] = '</li>';
$config['last_tag_open'] = '<li>';
$config['last_tag_close'] = '</li>';
$config['cur_tag_open'] = '<li class="active"> <a href="#">';
$config['cur_tag_close'] = '</a></li>';
$config['num_tag_open'] = '<li>';
$config['num_tag_close'] = '</li>';
$this->pagination->initialize($config);
$page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;
//searching... //
$data['result']= $this->nj_user->get_search($searchterm, $page, $config["per_page"]);
//end searching...//
$data["link"] = $this->pagination->create_links();
$data['hms'] = $page;
$this->load->view('user/userview', $data);
$this->load->view('layout/footer');
}
}
?>


Model Code:
<?php
class nj_user extends CI_model
{
function get_search($searchterm, $start, $limit)
{
$query ="select * from nj_user where name='".$searchterm['uname']."' || email='".$searchterm['email']."' || mobile='".$searchterm['mobil']."' limit ".$start.", " .$limit;
$res = $this->db->query($query);
return $res->result();
}
function count_search( $searchterm)
{
$query ="select * from nj_user where name='".$searchterm['uname']."' || email='".$searchterm['email']."' || mobile='".$searchterm['mobil']."' ";
$res = $this->db->query($query);
$Data=$res->result();
return count($Data);
}
}
?>


View Code:
<script>
$(document) .on("click",".search",function(){
var name = document.getElementById('uname');
var mail = document.getElementById('email');
var mob = document.getElementById('mobil');
if (name.value != "" || mail.value != "" || mob.value != ""){
document.frmusers.submit();
}
})
</script>
<div class="content-wrapper">
<section class="content-header">
</section>
<section class="content">
<div class="row">
<div class="col-md-3 tbl">
<div class="box1">
<div class="box-header">
<h3 align="center">Users</h3>
</div><!-- /.box-header -->
<form method="post" action="<?php echo base_url();?>user/searh" name="frmusers">
<tr>
<td></td>
<td>Search User : <input name="uname" placeholder=" Name..." id="uname" /></td>
&nbsp;
<td></td>
<td><input name="email" placeholder=" Email..." id="email"/></td>
&nbsp;
<td> </td>
<td> <input name="mobil" placeholder=" Mobile..." id="mobil"/></td>
<button class="btn btn-primary search" style="width: 100px;" type="button">Search</button>
&nbsp; &nbsp; &nbsp;
<a href="<?php echo base_url();?>user/view">Clear Search.</a>
</tr>
</form>
<div class="box-body">
<table id="example2" class="table table-bordered table-striped " bordercolor="#">
<thead>
<tr>
<th class="th">No.</th>
<th class="th">Name</th>
<th class="th">Address</th>
<th class="th">Email</th>
<th class="th">Gender</th>
<th class="th">Mobile</th>
<th class="th">Join Date</th>
</tr>
</thead>
<tbody>
<?php
$srno = $hms + 1;
foreach($result as $row)
{?>
<tr>
<td><?php echo $srno; $row->user_id;?></td>
<td align="center"><?php echo $row->name;?></td>
<td align="center"><?php echo $row->address;?></td>
<td align="center"><?php echo $row->email;?></td>
<td align="center"><?php echo $row->gender;?></td>
<td align="center"><?php echo $row->mobile;?></td>
<td align="center"><?php echo $row->joindate?></td>
</tr>
<?php
$srno++; }?>
</tbody>
</table>
<p><?php echo $link; ?></p>
</div></section>
</div>
          Files zip 

Comments

Post a Comment

Popular Posts