Pembaca yang budiman. Ada pertanyaan melalui email kepada saya tentang bagaimana membuat pagination di Codeigniter. Sebetulnya gampang alias mudah, karena Codeigniter sudah menyediakan library untuk melakukan / membuat halaman pada sebuah view data yang kita ambil dari database. Berikut adalah cara membuat pagination secara simple ala saya (cara saya sendiri :) ).
Oke buatlah sebuah database di sistem MySQL anda, misalkan saya buat dengan nama db_gaji.
CREATE DATABASE db_gaji;
Kemudian buat tabel karyawan yang nantinya akan kita gunakan sebagai sumber data dari tutorial kita.
CREATE TABLE IF NOT EXISTS `tbl_karyawan` (
`nik` int(15) NOT NULL AUTO_INCREMENT,
`nama_lengkap` varchar(100) NOT NULL,
`jenkel` enum(‘L’,’P’) DEFAULT NULL,
`tanggal_lahir` date NOT NULL,
`gapok` int(11) NOT NULL,
PRIMARY KEY (`nik`)
)
dan isi tabel karyawan dengan data berikut :
INSERT INTO `tbl_karyawan` (`nik`, `nama_lengkap`, `jenkel`, `tanggal_lahir`, `gapok`) VALUES
(1001, ‘Lilin Herlina’, ‘P’, ‘1988-03-23’, 420000),
(1002, ‘Agung H’, ‘L’, ‘1986-01-20’, 530000),
(1003, ‘Dwi Ratna’, ‘P’, ‘1987-11-11’, 50000),
(1004, ‘Via Vallent’, ‘P’, ‘1990-12-25’, 700000),
(1005, ‘Sodiq’, ‘L’, ‘1975-08-17’, 900000),
(1006, ‘Gerry Mahesa’, ‘L’, ‘1985-08-27’, 900000),
(1007, ‘Mella Barbie’, ‘P’, ‘1988-09-27’, 800000),
(1009, ‘Dimas Edubuntu Samid’, ‘L’, ‘1945-11-01’, 1500000),
(1010, ‘Brodien’, ‘L’, ‘1975-05-09’, 785000);
Setelah membuat table langkah berikutnya adalah kita lakukan setting koneksi ke database kita, caranya bukalah file application/config/database.php, pada baris kurang lebih 51 anda akan menemukan skrip berikut :
Ubah juga file pada direktori application/config/autoload.php seperti ini :
[php]$autoload[‘libraries’] = array(‘database, pagination’);[/php]
berguna untuk melakukan setting auto database library.
Dan juga lakukan load helper untuk mengakses class uri segment berfungsi untuk pagination nya.
[php]$autoload[‘helper’] = array(‘url’);[/php]
Membuat Model
Setelah semuanya siap saatnya kita membuat model, saya beri nama m_karyawan.php. Apa fungsinya ? fungsinya adalah mengambil dari database record yang kita butuhkan untuk ditampilkan pada layar browser melalui file pada direktori view. Buat seperti ini :
Membuat Controller
Kemudian buat controller dan beri nama karyawan.php, berikut listing scriptnya :
Membuat View
Terakhir buatlah file view untuk menampilkan data dari database, simpan dengan nama karyawan_view.php.
Setelah semuanya siap. Sobat tinggal menampilkannya dalam browser. Buka browser kemudian ketikan http://localhost/tutorial/karyawan, seharusnya mendapatkan tampilan seperti berikut :
Demikian tutorial tentang pagination semoga dapat menjawab pertanyaan yang diajukan. dan semoga juga bermanfaat untuk anda semua. :)
Terima Kasih,
Dimas Edu P
thanks gan.. tutorialnya bermanfaat banget^^
mkash yah gan, bermanfaat buat nubie kayak ane.
sama-sama, kami senang kalau berguna untuk anda :)
asik banget tutor nya :D thank’s
mas… itu saya sudah nyoba namun dibagian view itu halan undefined… gimana itu
kemungkinan ada variable yang belum di deklarasikan. pada tutorial diatas ada dua variable yang harus di deklarasikan yaitu
$query -> berfungsi untuk menampilkan data dari database
dan
$halaman-> berfungsi untuk menampilkan halaman.
jangan lupa juga kita panggil variable tersebut dengan
$this->load->view(‘nama_view’, $data);
semoga bisa membantu. atau hubungi email saya saja di
edudimas1@gmail.com :)
A PHP Error was encountered
Severity: Notice
Message: Undefined property: Karyawan::$db
Filename: controllers/karyawan.php
Line Number: 15
Fatal error: Call to a member function get() on a non-object in C:\xampp\htdocs\b\application\controllers\karyawan.php on line 15
A PHP Error was encountered
Severity: Notice
Message: Undefined property: Karyawan::$db
Filename: controllers/karyawan.php
Line Number: 15
Fatal error: Call to a member function get() on a non-object in C:\xampp\htdocs\b\application\controllers\karyawan.php on line 15
kenapa ya gan ?
Selamat malam,
Terima kasih atas pertanyaan yang diajukan.
$this->db
apa penulisan variablenya sudah benar dengan $this->db->
Solusi :
1. coba cek penulisan variable.
2. kemungkinan belum meload library database, coba cek pada autoload.php, berikut adalah baris kode pada file autoload.php :
$autoload[‘libraries’] = array(‘database’);
semoga bisa membantu :)
Tq ya Tutorial ya ^_^ bisa ne hehe
oh iya lupa ane gan ^_^
A PHP Error was encountered
Severity: Notice
Message: Undefined property: Karyawan::$pagination
Filename: controllers/karyawan.php
Line Number: 27
Fatal error: Call to a member function initialize() on a non-object in C:\xampp\htdocs\b\application\controllers\karyawan.php on line 27
knapa ya ?
$pagination belum di panggil om
$this->load->library(‘pagination’); //di function index
Request Tutorial dong gan :D
apa?
Tutorial Login gan , ane mentok banget nih …
Aku pakai CI_2.1.3, awalnya memang erorr, tapi sewaktu aku lihat pesan erorr nya ternyata di autoload.php nya kurang di tambahin “pagination”, seperti ini kurang lebih nya $autoload[‘libraries’] = array(‘database’,’pagination’);
Terima kasih atas komentarnya..
@Dwi : oke segera saya bikin tutorialnya untuk login multilevel.
ini gak ada demo sama downloadnya ???
bagi donk demo sama downloadnyaa ???
Thanks gan untuk infonya :)
kerjaan hampir beres ni :D
Sip, good luck
mau nanya gan, kalau kita klik halaman yang berikutnya
masih page not found (
404 Page Not Found
The page you requested was not found.
)
minta solusinya !
maaf ngerepotin ya :)
Mungkin link url yang dituju masih salah tulis :)
mungkin pengaturan pada sisi server nya, saya menggunakan .htacess pada tutorial tersebut. Mungkin mas belum melakukan setting pada sisi server. Coba anda setting dulu dan hilangkan index.php pada file config.php.
atau bisa juga dengan seperti ini : http://localhost/latihan/index.php/latihanku
semoga membantu :)
@Dimas : saya juga menggunakan .htacess.
owh ya saya hampir lupa, saya menggunakan CI yang versi HMVCnya. apakah itu berpengaruh ?
untuk sebelumnya terimakasih atas sarannya :)
Tidak ngaruh, sama aja kok :)
owh.. ok dech saya cek lagi aja :)
Terima Kasih atas semua sarannya ya :)
ow saya juga sama kayak mas nya ini,
404 Page Not Found
The page you requested was not found.
ternyata sulusinya cukup di kasih base_url().’controller_anda/index’ -> tambahkan index mas nya…
index dibagian belakang lo…
wah bener2 tutorialnya membantu mas…
masih mas mas e
@Angga : index dibagian belakang yang mana?
bisa tolong di jelaskan?
keren (y)
Selamat siang,
Seharusnya tidak berpengaruh, kemungkin tidak sesuai dengan pemanggilan core / main controller dari HMVC nya.
atau mungkin juga pada route default load controller nya yang bermasalah.
Selamat siang,
Seharusnya tidak berpengaruh, kemungkin tidak sesuai dengan pemanggilan core / main controller dari HMVC nya.
atau mungkin juga pada route default load controller nya yang bermasalah.
ASOLOLE JOS ….
makasih gan atas infonya :)
[…] sumber: http://www.tutorial-webdesign.com/paging-di-codeigniter/ […]
Suwun Boss ,,
membantu nih Ilmu nya
Semoga di Balas Kebaikanya :D
Amin..
Amin.. sama sama
saya belumnyoba tutorialnya, tapi mau tanya.. apakah kalo pagingyang ke 2 dikta klik nomer akanmengikuti baris selanjutnya ataukah dimulai dari nomer 1 lagi.. trims..
Nomor tinggal diakumulasi aja, uri+1 :)
Terima kasih atas pertanyaannya :D
Bisa juga anda melakukan tambahan script (bisa juga di controller)
if(empty($this->uri->segment(3)))
{
$no = 1;
}else
{
$no = $this->uri->segment(3);
}
foreach($query as $row)
{
===============
Penjelasan
===============
Halaman yang saya gunakan adalah mengacu pada variable $no, sehingga agar pada halaman berikutnya tidak menjadi satu lagi maka kita mengikuti uri segment pada link
http://domain/datakaryawan/index/20
maka selanjutnya akan menambahkan otomatis menjadi 21
demikian jawaban dari saya semoga membantu :)
makasih kaka, tutorialnya mudah di pelajari ,:D
ijin request tutorial Role Based Access, bingung cari g nemu2 nih pak :)
awalnya ini ada error
$autoload[‘libraries’] = array(‘database, pagination’);
kemudian di ganty
$autoload[‘libraries’] = array(‘database’, ‘pagination’); (kurang ‘ aja) bisa bantu share
A Database Error Occurred
Unable to select the specified database: db_gaji
Filename: C:\xampp\htdocs\tes\system\database\DB_driver.php
Line Number: 140
salah nya dmna ya gan ?
$active_group = ‘default’;
$active_record = TRUE;
$db[‘default’][‘hostname’] = ‘localhost’;
$db[‘default’][‘username’] = ‘root’;
$db[‘default’][‘password’] = ”;
$db[‘default’][‘database’] = ‘db_gaji’;
$db[‘default’][‘dbdriver’] = ‘mysql’;
$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’][‘swap_pre’] = ”;
$db[‘default’][‘autoinit’] = TRUE;
$db[‘default’][‘stricton’] = FALSE;
mohon pencerahannya :D
buat dulu databasenya dengan nama gaji, sesuaikan dengan tutorial, sesuaikan juga settingan databasenya dengan settingan database dikomputer kamu.
sudah gan, tutorialnya udah d ikutin smua
tp errorny kyk gitu
Settingan database biasanya bisa aja beda-beda di tiap komputer, tergantung yang punya komputer, jadi coba dipelajari lagi :)
punya saya kok pas di paginationnya tidak muncul next nya? tolong di bantu.makasi
makasih banget gan…
sungguh sangat membantu…
thanks….
masih bingung sama penomoran paging ,
mohon bantuannya..
gan, bisa lebih dijelaskan ga tentang htacces?? soalnya kalo mengikuti tutorial diatas error disananya
thx gun ,, tutorial tentang pegination nya .. anee cepat banget ke serap nya heheh :)
[…] cara membuat navigasi yang mudah misalnya dengan membuat menu utama, memasang breadcrumb, nomor halaman, peta situs (site map), artikel terkait, dan […]
thanks atas tutorialnya, sangat bagus sekali untuk belajar
Min saya mau nanya , kenapa pada saat saya klik ke halaman/page ke dua malah “Object Not Found” ?
URL nya gak tepat berarti, cek lagi
idem sama yang diatas, kok ketika di klik halaman kedua eror gan, yang muncul dissallowed character, padahal sudah ditambahkan permited_uri_chars. mohon pencerahannya gan
mas kok pas saya coba kok data yg muncul cuman 5 data pertama saja, padahal sudah page ke 2, kira-kira apa yang salah yaa ?
Makasih tutornya… dan Alhamdulillah bisa dimplemntasikan
makasih banyak gan
masih kurang lengkap bro kurang paham ane
tolong cek web ane gan di bagian kanan “ALSO VISIT THIS WEBSITE” gak bisa sejajar thanks before .
ini kenapa gan ?
A PHP Error was encountered
Severity: Notice
Message: Undefined variable: halaman
Filename: views/view_crud.php
Line Number: 45
gan thanks tutorialy bermanfaat, tapi maaf sebelumy kok pas aq klik halaman pagination yang selanjuty kok halamany g ada ya?? mohon sarany trimakasih :)
Mungkin kamu salah dalam menentukan URI segment, coba di cek lagi
bingung gan gimana ya. lha yg betul diletakkan dimana ya?? mohon sarany makasih:)
Alhamdulillah, :D Akhirnya bisa sesuai dengan kodingan saya…
Thanks Gan atas tutor nya :D
Gan kok kalau ganti page baru, kok si no nya dari 1 lagi ya?
Agar no urut tidak ke satu lagi bisa diakalin dengan menggunakan uri segment. Jadi, pada saat akan melakukan looping variable untuk no urut bisa diganti seperti ini :
if(!empty($this->uri->segment(3)))
{
$no = $this->uri->segment(3);
}else
{
$no = 1;
}
Maksudnya gimana???
Jawab : maksudnya kita melakukan pengecekan apakah ada nilai pada segment ke-3 di URL kita, http://localhost/aplikasi/controller/method/segment. Jika ada maka sistem akan mengambil value pada segment ke tiga pada URL kita namun jika tidak ada nilainya maka akan return atau mengembalikan nilai ke 1.
Demikian tips nya semoga bermanfaat.
source code lengkapnya gmn ya?
sy blum mngerti penempatan uri segmentny dmn..
please untuk keseluruhan scriptnya gan jika mau berurutan donk nomornya ?
oh iya ini aku pindahkan ke program ku kok memang jalan tapi ketika klik no pagging yang pertama kenapa gak jalan untuk gambar yang lain-lain jalan paggingnya gan ?
Thanks buat respon ini
reply email gan kalau tidak kerbatan sidaurukfreddy@gmail.com
Maaf Pak mau tanya,
saya sudah coba , data dari tabel keluar. tapi kok link untuk paginationnya tidak keluar?
apa yang salah ya Pak?
coba dibaca lagi tutorialnya dan coba dibaca jg komentar pembaca lain sebelumnya
Ini gimana ya?
A PHP Error was encountered
Severity: Notice
Message: Use of undefined constant url – assumed ‘url’
Filename: config/autoload.php
Line Number: 67
An Error Was Encountered
Unable to load the requested class: database, pagination
Om ini mau nanya kalo yang pas insert data di database kan harusnya data pertama tuh ‘Lilis Herlina’ kenapa pas di tampilankannya jadi yang ‘Agung A’ yang pertamanya? ASAP -newbie-
karena diurutkan berdasarkan abjad kayaknya ya, coba di cek dibagian query nya di model
selamat siang min, terima kasih sebelumnya atas tutorialnya, namun punya saya masih belum berjalan sempurna, yang pertama datanya muncul semua di dalam satu page kemudian saat di klik next yang muncul tetap data yang pertama , bagaimana solusinya ya min ? mohon bantuannya, terima kasih
Pas ke page 2nya malah not found, itu dimana yang salanya ya? :o
//controller
function index($nama=NULL){
$jml=$this->db->get(‘alumni’);
//pengaturan pagination
$config[‘base_url’] = base_url().’index.php/data_alumni/index’;
$config[‘total_rows’] = $jml->num_rows();
$config[‘per_page’] = ‘6’;
$config[‘full_tag_open’] = “”;
$config[‘full_tag_close’] =””;
$config[‘num_tag_open’] = ”;
$config[‘num_tag_close’] = ”;
$config[‘cur_tag_open’] = ““;
$config[‘cur_tag_close’] = ““;
$config[‘next_tag_open’] = “”;
$config[‘next_tagl_close’] = “”;
$config[‘prev_tag_open’] = “”;
$config[‘prev_tagl_close’] = “”;
$config[‘first_tag_open’] = “”;
$config[‘first_tagl_close’] = “”;
$config[‘last_tag_open’] = “”;
$config[‘last_tagl_close’] = “”;
$this->pagination->initialize($config);
//buat pagination
$data[‘data_alumni’] = $this->pagination->create_links();
$data[‘menu’] = $this->m_ikpm->get_menu_alumni();
$data[‘isi’] = $this->m_ikpm->get_data_alumni_all($config[‘per_page’],$nama);
$data[‘konten’] = ‘data_alumni’;
$this->load->view(‘base’, $data);
}
view
<img class="img-responsive" src="foto);?>” alt=””>
nama;?>
angkatan;?>
Lihat Profil
kok masih tampil semua ya??
padahal paging linknya dah jalan
Object not found!
The requested URL was not found on this server. The link on the referring page seems to be wrong or outdated. Please inform the author of that page about the error.
If you think this is a server error, please contact the webmaster.
Error 404
localhost
Apache/2.4.9 (Win32) OpenSSL/1.0.1g PHP/5.5.11
gan kenapa klo mau tampilkan halama berikut nya malah hasilnya begini
A PHP Error was encountered
Severity: Notice
Message: Undefined variable: halaman
Filename: views/v_mahasiswa_tabel.php
Line Number: 83
tolong gan gmn tuh ? padahal variabel halaman udah di cantumin
Unable to load the requested class: database,pagination
salahnya kenapa ya gan? mohon pencerahannya
A Database Error Occurred
Unable to connect to your database server using the provided settings.
Filename: C:\xampp\htdocs\CI\system\database\DB_driver.php
Line Number: 124
gan kalo ky gitu kenapa??mohon pencerahan
terimakasih atas tutorialnya punya saya sudah jalan pagingnya tapi setelah diklik ke page nomer 2 kenapa masih sama seperti page nomer 1 ya? dan datanya tampil semua padahal sudah saya atur perpagenya 3 data yang muncul, terimakasih
mas mau nanya,,kan udh jadi nih keluar paging nya tpi pas di klik halaman 2,koq data nya tetep sama kaya halaman pertama ya..
mohon pencerahannya..
tenkyu..
Sudah pernah ada yang tanya sebelumnya, silahkan baca di komentar ya
misi om mau nanya kok pada waktu dibuka dibrowser datanya tidak tampil/ data tidak tersedia tapi perpindahan pagenya muncul 1,2,3 sampai page ke 25, meskipun pagenya dipindah data tetap ga muncul mohon pencerahanya om, terimah kasih atas kebaikanya berbagi ilmu om.
Nice gan, sangat membantu saya
terimakasih nich info dan ilmunya. buat nambah referensi pengetahuan PHP saya. salam
An Error Was Encountered
Unable to load the requested class: database, pagination
jawabannya kayak gtuh gimana membenarkannya ? terima kasih
gan mau tanya ni, klo cara nampilin isi artikel agar responsive gmn, terus didalam isi artikel tu ada gambar juga kaya di blogspot gitu, nah gimana caranya agar gambar dalam isi berita tu bisa responsive juga tolong yaaa gan bantuannya…
terimakasih
Cari tau nama class dari tag yang memuat gambar tersebut, kalau sudah tau, misal tag nya seperti ini ->
div class="post-content"
maka di css tinggal tambahkan
.post-content img{
width: 100%;
height: auto;
}
kok ngga bisa pindah ke page lain ya? terus waktu saya load web nya, harusnya cuma keluar 1 parameter tapi kok keluarnya 2?
seharusnya “http://localhost/codeigniternew-3/c_home/daftar/1” saja, tetapi jadinya “http://localhost/codeigniternew-3/c_home/daftar/1/2”.
kok ngga bisa balik ke halaman sebelumnya ya?? mohon bantuannya gan. Terima kasih
kok pas saya mau ke page selanjunya gabisa gan error : http://localhost/pagination_session_ci/karyawan/index/5
Thank you untuk tutorialnya membantu sekali tetapi alangkah baiknya juga ditambahkan penjelasan fungsinya untuk apa gan maklum newbie.
Gan, ane mau tanya script yang di model digunakan untuk apa ? dan 2 parameter $num & $offset untuk apa ?
$data = $this->db->GET(‘tb_product’, $num, $offset);
Terima kasih
Permisi mas, om, abang, agan :)
Mau minta bantuannya nih :’)
A PHP Error was encountered
Severity : Notice
Message : Undefined variable : m_kategori
Filename ; controllers/kategori.php
Line number : 12
Fatal error : cannot access empty property in C:\xampp\htdocs\tokobuku\application\controllers\kategori.php on line 12
Mohon bantuannya ya gan 😀