Tutorial Pagination di CodeIgniter

Tidak seperti pada pembuatan pagination secara konfensional, pada framework CodeIgniter (CI), pembuatan pagination dapat dikatakan sangat mudah. CodeIgniter telah menyediakan library pagination sehingga kita tidak perlu bersusah payah dalam pembuatan kode atau sintax pagination. Berikut ini adalah langkah-langkah untuk membuat pagination di CodeIgniter (disini saya akan mencontohkan untuk menampilkan anggota perpustakaan menggunakan pagination. Dan disini juga saya tambahkan,penggunaan library table untuk membuat tabel yang telah disediakan oleh CI.

  • Membuat kontroller anggota

simpan file tersebut pada direktori controller dengan nama anggota.php
berikut adalah codenya :

Class Anggota extends Controller{
function __construct(){
parent::Controller();
$this->load->model("anggota_m","",TRUE);
$this->load->library("pagination");
$this->load->library("table");
}

function index(){
$data['base_url'] = base_url().'index.php/anggota/index';
$data['total_rows'] = $this->db->count_all('anggota');
$data['per_page'] = '10';
$this->pagination->initialize($data);
$data["no"] = $this->uri->segment(3);
$data["title"] = "Daftar Anggota Perpustakaan";
$data["browse_anggota"] = $this->anggota_m->select($data["per_page"],$this->uri->segment(3));
$this->load->view("anggota_v",$data);
}
}
  • Membuat Model Anggota
Setalah Controller berhasil dibuat, langkah selanjutnya adalah membuat model. berikut codenya :
Class Anggota_m extends Model{
function __construct(){
parent::model();
}

function select($limit1,$limit2){
$data = array();
$this->db->select("*");
$this->db->from("anggota");
$this->db->limit($limit1,$limit2);
$hasil = $this->db->get();
if($hasil->num_rows() > 0){
$data = $hasil->result();
}
$hasil->free_result();
return $data;
}
}
  • Membuat View
Untuk menampilkan hasilnya, kita harus membuat membuat view. Kita buat saja dengan file bernama anggota_v.php dan simpan pada direktori Views, dan isikan kode berikut :


echo $this->pagination->create_links();
echo $this->table->set_heading("No","ID Anggota","Nama Anggota",
"Jenis Kelamin","Alamat","Det","Ubh","Del");
$i = $no+1;
foreach($browse_anggota as $rec_agg){
if($rec_agg->jklmn == "1"){
$jklmn = "Laki-laki";
}else{
$jklmn = "Perempuan";
}
echo $this->table->add_row($i++,$rec_agg->id_anggota,$rec_agg->nama_anggota,
$jklmn,$rec_agg->alamat,
anchor_popup("anggota/detail/".$rec_agg->id_anggota,img_detail(),$attr_popup),
anchor("anggota/edit/".$rec_agg->id_anggota,img_edit()),
anchor("anggota/hapus/".$rec_agg->id_anggota,img_hapus(),"OnClick='return Confirm_hapus()'")
);
}
echo $this->table->generate();


Selamat mencoba, jika berhasil saya ucapkan selamat. Tapi kalo belum berhasil, teruslah mencoba atau tinggalkan pesan disini, insyaAlloh saya siap membantu. ;)
read more...