WebFramework: CodeIgniter – Pagination Class

14 May

CodeIgniter – Pagination class

Pendahuluan

Digunakan untuk memunculkan Link halaman ketika kita menampilkan isi dari sebuah table.

Contoh :

Library yang di pakai : pagination

Parameter yang di set:

  • Base URL
  • Jumlah baris keseluruhan / jumlah semua baris dalam tabel
  • Jumlah baris per halaman

Contoh Form

Pada form tersebut, menggunakan MVC, dengan

  • Controller pengguna, dengan fungsi yang berkaitan
    • Construct, fungsi yang selalu di jalankan ketika class di panggil
    public function __construct(){

    parent::__construct();

    $this->load->model(‘m_pengguna’);

    $this->load->library(‘table’);

    $this->load->helper(‘url’);

    $this->load->helper(‘form’);

    $this->load->library(‘pagination’);

    }

    • Index, digunakan untuk menampilkan data di list
      ada paramater page yang digunakan untuk menentukan halaman yang di panggil oleh user
Public function index($page=”){

if ($page == ”)

{

$page = ‘0’;

}

$hasil = $this->m_pengguna->tampil_semua_data(”,$page);

$this->table->set_heading(‘No’, ‘User Name’, ‘Password’, ‘Name Lengkap’,’Level’,’Actions’);

$tmpl = array( ‘table_open’ => ‘<table border=”1″ cellpadding=”4″ cellspacing=”0″>’,

‘row_alt_start’ => ‘<tr bgcolor=”#FFFF00″>’,

‘row_alt_end’ => ‘</tr>’ );

$this->table->set_template($tmpl);

$i=$page;

foreach ($hasil->result() as $row)

{

$this->table->add_row(++$i, $row->uname, ”, $row->namalengkap,
$row->id_level, anchor(‘pengguna/delete/’.
$row->uname,’hapus’,array(‘class’=> ‘delete’,
‘onclick’ =>”return confirm(‘Anda yakin akan menghapus data “.
$row->uname.”?’)”)).’.’.anchor(‘pengguna/update/’.$row->uname,’edit’));

}

//paging

$config[‘base_url’] = base_url().’index.php/pengguna/index/’;

$config[‘total_rows’] = $this->m_pengguna->recordcount();

$config[‘per_page’] = 10;

$this->pagination->initialize($config);

$data[‘isi’] = $data[‘isi’].$this->pagination->create_links();

$data[‘isi’] = $data[‘isi’].$f;

//———- Load view

$this->load->view(‘/templates/header’);

$this->load->view(‘/templates/isi’,$data);

$this->load->view(‘/templates/footer’);

}

  • Model yang digunakan adalah m_pengguna, memiliki fungsi yang terkait
    • Construct, fungsi yang selalu di jalankan ketika class di panggil
    • tampil_semua_data, digunakan untuk menampilkan semua data, dengan parameter filter nama dan nohalaman. Filter nama merupakan contoh parameter tambahan
    • recordcount

Tugas untuk didemokan Selasa 15 Mei 2012, jam9:30 di Lab

  1. Database Project telah di implementasikan
  2. 1 tabel telah diisi minimal 30 record
  3. Data di tabel tsb di tampilkan menggunakan pagination.

Jika ada pertanyaan : ocal_sophan@yahoo.com

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: