Untuk membuat contoh Pagination, kita buat dulu tabel pagination misalnya
create table pagination(<br> NoID int,<br> IsiNo varchar(20)<br> );<br>
Kemudian kita isi tabelnya seperti berikut :
INSERT INTO pagination VALUES(1,'Data ke satu');<br> INSERT INTO pagination VALUES(2,'Data ke dua');<br> INSERT INTO pagination VALUES(3,'Data ke tiga');<br> INSERT INTO pagination VALUES(4,'Data ke empat');<br> INSERT INTO pagination VALUES(5,'Data ke lima');<br> INSERT INTO pagination VALUES(6,'Data ke enam');<br> INSERT INTO pagination VALUES(7,'Data ke tujuh');<br> INSERT INTO pagination VALUES(8,'Data ke delapan');<br> INSERT INTO pagination VALUES(9,'Data ke sembilan');<br> INSERT INTO pagination VALUES(10,'Data ke sepuluh');<br> INSERT INTO pagination VALUES(11,'Data ke sebelas');<br> INSERT INTO pagination VALUES(12,'Data ke duabelas');<br> INSERT INTO pagination VALUES(13,'Data ke tigabelas');<br> INSERT INTO pagination VALUES(14,'Data ke empatbelas');<br> INSERT INTO pagination VALUES(15,'Data ke limabelas');<br>
Sekarang kita buat Model,Controller, dan Views-nya
MODEL
Model digunakan untuk mengambil data dari database.
Buatlah sebuah file dengan nama mpagination.php dan simpan di folder
application/models/
Isi dari mpagination.php adalah sebagai berikut :
<?<br> class <strong>Mpagination</strong> extends Model { <code> function <strong>Mpagination</strong>(){<br> parent::Model();<br> } <code> function AmbilData($num, $offset) {<br> $query = $this->db->get('pagination', $num, $offset);<br> return $query;<br> } <code> }<br> ?><br>
CONTROLLER
Buatlah sebuah file dengan nama pagination.php dan simpan di folder
application/controllers/
Isi dari pagination.php adalah sebagai berikut :
<?<br> class <strong>Pagination</strong> extends Controller {<br><br> <code> function __construct() {<br> parent::Controller();<br> $this->load->helper('url');<br> $this->load->database();<br> } <code> function index() {<br> <em>//load pagination class</em><br> $this->load->library('pagination'); <code> <em>// Pengaturan konfigurasi untuk pagination</em><br> $config['base_url'] = base_url().'index.php/pagination/index/';<br> $config['total_rows'] = $this->db->count_all('pagination');<br> $config['per_page'] = '4';<br> $config['first_link'] = 'Awal';<br> $config['last_link'] = 'Akhir';<br> $config['next_link'] = 'Selanjutnya';<br> $config['prev_link'] = 'Sebelumnya';<br><br> $this->pagination->initialize($config); <code> <em>//load model and ambil hasilnya</em><br> $this->load->model('Mpagination');<br> $data['hasil'] = $this->Mpagination->AmbilData($config['per_page'],$this->uri->segment(3)); <code> <em>// load the HTML Table Class</em><br> $this->load->library('table');<br> $this->table->set_heading('NoID', 'IsiNo'); <code> <em>// load the view</em><br> $this->load->view('v_pagination', $data);<br> } <code> }<br> ?>
VIEWS
Buatlah sebuah file dengan nama v_pagination.php dan simpan di folder
application/views/
Isi dari v_pagination.php adalah sebagai berikut :
<html><br> <head><br> <title>Membuat Pagination</title><br> </head><br> <body><br> <h1>Membuat Pagination</h1><br> <em> <? echo $this->table->generate($hasil); ?><br></em> <em> <? echo $this->pagination->create_links(); ?><br></em> </body><br> </html><br>
Untuk lebih jelasnya silahkan lihat CodeIgniter User Guide tentang Pagination Class
Comments
Saya sudah berhasil
November 29, 2010 by Anonymous, 1 year 9 weeks ago
Comment: 7433
Saya sudah berhasil menampilkan paging cuma apakah urutan dan layoutnya bisa kita atur, karena saya bingung ngatur urutannya field2 misalkan noid jadi di belakang dan isi datan di depannyaSaya sudah berhasil menampilkan paging cuma apakah urutan dan layoutnya bisa kita atur, karena saya bingung ngatur urutannya field2 misalkan noid jadi di belakang dan isi datan di depannya.HP0-J38
000-153
JN0-532
000-977
000-200
640-460
NS0-510
642-145
199-01
000-105
linknya mas
April 19, 2010 by cuplis, 1 year 41 weeks ago
Comment: 6279
jadi pas saya klik angka 2 langsung link ke http://example.com/index.php/pagination/index/3
itu bagaimana y mas
kalo ga salah di atur di config.php
tapi,saya tidak tahu
terima kasih
Database error
April 18, 2010 by cuplis, 1 year 41 weeks ago
Comment: 6275
salam kenal
mas saya sudah atur di database.php
namun tidak bisa
kenapa y mas
$db['default']['hostname'] = "/localhost/XE";
$db['default']['username'] = "achmadmuchlis";
$db['default']['password'] = "inf44";
$db['default']['database'] = "";
$db['default']['dbdriver'] = "oci8";
$db['default']['dbprefix'] = "";
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = "";
$db['default']['char_set'] = "utf8";
$db['default']['dbcollat'] = "utf8_general_ci";
$db['default']['hostname'] =
October 23, 2010 by artha_86, 1 year 15 weeks ago
Comment: 7270
$db['default']['hostname'] = "/localhost/XE";
hostname itu harusnya "localhost" aja mas bukan "/localhost/XE"
Menambahkan parameter di model
December 3, 2009 by satandik, 2 years 9 weeks ago
Comment: 5734
Mas saya mau nanya klo di modelnya ditambahin parameter seperti ini :
function getData($parameter, $num, $offset)
{
$query = $this->db->get_where('namatabel', array('namakolom' => $parameter), $num, $offset);
return $query;
}
pada views sama controller nya gimana mas?
Kemaren saya mencoba dengan menambahkan parameter pada controllernya tetapi link paging nya muncul tetapi datannya tidak tertampil.....
Mohon bantuannya mas....
Sekian Terima kasih.....
Angka link-nya tetap di 1
August 11, 2009 by lodonk, 2 years 25 weeks ago
Comment: 5619
Mas, trima kasih tutorialnya.
Saya udah hampir sukses bikin pagination, tapi kalo di klik angka untuk pindah halamannya tetap di nomor 1. Itu kenapa ya? Apa ada config yang harus di set lagi?
Makasih...
Sudah terjawab...
August 11, 2009 by lodonk, 2 years 25 weeks ago
Comment: 5620
Sudah terjawab... ^_^
Ternyata kurang $config['uri_segment']. hehe...
Mas lodonk naro
November 3, 2010 by gokil, 1 year 13 weeks ago
Comment: 7333
Mas lodonk naro $config['uri_segment'] nya di mana?
config.php or Pagination.php,, aq dah taro ditempat salah satunya tetap gagal
http://example.com/index.php/pagination/index/3
muncul
The requested URL /pagination/page/3 was not found on this server.
mohon pencerahannya
Nanya $offset
March 10, 2009 by dennysetia, 2 years 47 weeks ago
Comment: 236
Mohon dijelaskan tentang input $offset pada fungsi ambil data yang didapat dari uri segment 3.
terima kasih...
--denny--
oh maksudnya offset seperti ini ya
Artikel di atas, gagal....Error..mohon bantuannya
October 13, 2008 by hardyboyz, 3 years 16 weeks ago
Comment: 83
Maaf, mungkin ada kesalahan di saya, ketika saya run..muncul pesan seperti di bawah ini
Juga ada pesan error seperti ini
<strong>Call to a member function generate() on a non-object in...,</strong>kira-kira salah dimana ya saya? mohon bimbingannya...
salam,
pemula...
Saya sudah berhasil menampilkan paging cuma
July 12, 2008 by ivanlaksana, 3 years 29 weeks ago
Comment: 43
Saya sudah berhasil menampilkan paging cuma apakah urutan dan layoutnya bisa kita atur, karena saya bingung ngatur urutannya field2 misalkan noid jadi di belakang dan isi datan di depannya
Re : Saya sudah berhasil menampilkan paging cuma ..
July 14, 2008 by Anonymous, 3 years 29 weeks ago
Comment: 44
Coba lihat baris berikut pada controllernya:
baris di atas adalah proses pengambilan data dari database menggunakan fungsi AmbilData pada model Mpagination.
Sekarang kita lihat fungsi AmbilData
Fungsi di atas adalah mengambil data dari table "pagination" sesuai dengan urutan field yang ada ditable. Seperti perintah :
SELECT * FROM pagination;Jika urutannya ingin diubah silahkan ubah proses pengambilan datanya :
Selamat Mencoba.
thank atas pencerahannya ya
April 5, 2010 by matrix22, 1 year 43 weeks ago
Comment: 6242
thank atas pencerahannya ya
kalau nama Databasenya apa?
June 18, 2008 by Anonymous, 3 years 33 weeks ago
Comment: 31
nama databasenya apa?
trus sintak ini
$query = $this->db->get('pagination', $num, $offset);
maksudnya apa? pagination ini nama database atau nama tabel?
contoh diatas menggunakan mysql atau postgres?
terima kasih
Re : kalau nama Databasenya apa?
June 18, 2008 by Anonymous, 3 years 33 weeks ago
Comment: 32
Nama databasenya terserah, mau pakai nama apa saja.
Sebelum mencoba pagination ini, buatlah sebuah database dan user untuk mengakses database tersebut (kebetulan untuk contoh di atas, saya menggunakan MySQL).
Jangan lupa untuk mengatur konfigurasi database.php di /system/application/config
Setelah buat databasenya, baru buat table dengan nama table-nya : pagination (bisa dilihat contoh di atas)
Untuk sintaks
$query = $this->db->get('pagination', $num, $offset);
pagination = nama tabelnya
$num = limitnya
$offset = mulainya
Berikut ini keterangan dari User_Guide-nya CI di
Database Class -> Active Record Class -> Selecting Data
The second and third parameters enable you do set a limit and offset clause:
$query = $this->db->get('mytable', 10, 20);
// Produces: SELECT * FROM mytable LIMIT 20, 10 (in MySQL. Other databases have slightly different syntax)
Demikian dari saya, mudah-mudahan bermanfaat.
pencerahan
May 5, 2008 by Anonymous, 3 years 39 weeks ago
Comment: 20
mas kenapa ya ko tampilanya g muncul blank putih gt aza aku pake database postgres, tapi kalau pake mysql berhasil tampil pagination nya knp ya mas mohon bantuanya sdh 3 hr ni ngoprek tp blm bs jg
bls:
November 11, 2008 by syabac, 3 years 12 weeks ago
Comment: 103
di system/application/config/database.php udah disetting database drivernya postgre blom??
kalo blom coba ganti menjadi
$db['default']['dbdriver'] = "postgre";
semoga membantu..
Pencerahan
May 5, 2008 by Anonymous, 3 years 39 weeks ago
Comment: 21
Wah, maaf sekali saya belum pernah pakai postgres.
Mungkin dari rekan-rekan lain ada yang tau?
Apakah di postgress ada sintaks LIMIT untuk membatasi apa yang kita lihat dengan perintah SELECT ?
Terima kasih,
Chandra
pqsql itu postre+sql
March 28, 2009 by Anonymous, 2 years 44 weeks ago
Comment: 492
jadi pasti adalah perintah limitnya.
kan perintah standar sql tuh
pgsql ada limit nya
June 25, 2008 by mul14, 3 years 32 weeks ago
Comment: 36
http://www.postgresql.org/docs/8.1/static/queries-limit.html