StudyKuy – Codeigniter4 Tutorial #6: Membuat Pagination dan Search. Selamat Siang sekarang kita akan membuat pagination pada codeigniter4 kita. Sebelumnya bagi kalian yang baru saja mengikuti blog ini coba kalian lihat dahulu blog sebelumnya tentang codeigniter4.
Disini saya akan membahas lagi dan menyelesaikan coddingan kita, sebelumnya kita sudah membuat 100 data untuk user kita, jika kalian tidak membuat pagination atau halaman table mungkin kalian akan terganggu harus scroll kebawah terus.
Dengan adanya pagination di codeigniter4 ini memudahkan kalian untuk menentukan berapa baris yang akan kalian tampilkan pada tabel kalian.
Baiklah kita langsung ke pokok materinya, langsung saja kalian aktifkan dahulu server codeigniter kalian pada composer kalian dengan php spark serve Setelah itu kalian buka text editor kalian.
Pengertian Pagination
Pagination adalah sebuah metode untuk membagi-bagi table per page singkatnya seperti itu. pada penggunaan paginasi biasanya untuk membuat tampilan tabel tidak terlalu panjang dan memudahkan kita membuat halaman dibawah tabel kita agar lebih user friendly teman mari kita bahas satu persatu prosesnya.

Pengertian Search
Pada web yang akan kita buat kita juga tambahkan kolom pencarian atau search yang biasanya untuk memudahkan user untuk mencari sebuah nama atau keyword, bagaimana cukup menarik bukan ilmu yang kita bahas kali ini.
Baca Juga
7 tips for a healthy diet that is effective and inexpensive.
Excel Pengertian Sum Fungsi dan Rumus
Codeigniter4 Tutorial #5: Membuat Migration, Seeder & Faker
Cara Membuat pagination dan search
Pertama tama kita buat file Models baru kalian bisa ke folder App->Models lalu buat file baru terserah kalian dan usahakan ada kata Model nya. Disini saya membuat nama filenya UserModels.php kalian bisa ikuti nama file saya atau mempunyai kreasi sendiri, lalu kalian copy kan code berikut :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <?php namespace App\Models; use CodeIgniter\Model; class UserModel extends Model { protected $table = 'data_user'; protected $useTimestamps = true ; protected $allowedFields = ['nama_user','alamat_user']; public function search($keyword) { // $builder = $this->table('data_user'); // $builder->like('nama_user', $keyword); return $this->table('data_user')->like('nama_user', $keyword)->orLike('alamat_user', $keyword); } } |
Setelah kalian copy kan ini jangan lupa kalian harus buat juga untuk controllernya disini saya membuat controller dengan nama DataUser.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | <?php namespace App\Controllers; use \App\Models\UserModel; class DataUser extends BaseController { protected $userModel; public function __construct() { $this->userModel = new UserModel(); } public function index() { $currentPage = $this->request->getVar('page_data_user') ? $this->request->getVar('page_data_user') : 1 ; $keyword = $this->request->getVar('keyword'); if ($keyword) { $user = $this->userModel->search($keyword); }else { $user = $this->userModel; } $data = [ 'title' => 'Daftar User | StudyKuy', // 'user' => $this->userModel->findAll() 'user' => $user->paginate(6, 'data_user'), 'pager'=> $this->userModel->pager, 'currentPage' => $currentPage ]; return view('user/index', $data); } } |
untuk script ‘user’ => $user->paginate(6, ‘data_user’) kalian bisa tambahkan berapa banyak halaman yang akan ditampilkan pada tabel yang akan kalian buat pada codeigniter kalian, disini saya menggunakan 6 data pada tabel saya.
Setelah kalian buatkan semua file diatas nah selanjutnya kalian bisa buatkan untuk tampilannya, kalian buat folder pada view kalian disini saya akan buat dengan nama folder pager dan buat file baru dengan nama user_pagination.php. setelah itu kalian bisa copy code berikut :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | <?php $pager->setSurroundCount(2) ?> <nav aria-label="Page navigation"> <ul class="pagination"> <?php if ($pager->hasPrevious()) : ?> <li class="page-item"> <a class="page-link" href="<?= $pager->getFirst() ?>" aria-label="<?= lang('Pager.first') ?>"> <span aria-hidden="true"><?= lang('Pager.first') ?></span> </a> </li> <li class="page-item"> <a class="page-link" href="<?= $pager->getPrevious() ?>" aria-label="<?= lang('Pager.previous') ?>"> <span aria-hidden="true"><?= lang('Pager.previous') ?></span> </a> </li> <?php endif ?> <?php foreach ($pager->links() as $link) : ?> <li class="page-item <?= $link['active'] ? 'active' : '' ?>"> <a class="page-link" href="<?= $link['uri'] ?>"> <?= $link['title'] ?> </a> </li> <?php endforeach ?> <?php if ($pager->hasNext()) : ?> <li class="page-item"> <a class="page-link" href="<?= $pager->getNext() ?>" aria-label="<?= lang('Pager.next') ?>"> <span aria-hidden="true"><?= lang('Pager.next') ?></span> </a> </li> <li class="page-item"> <a class="page-link" href="<?= $pager->getLast() ?>" aria-label="<?= lang('Pager.last') ?>"> <span aria-hidden="true"><?= lang('Pager.last') ?></span> </a> </li> <?php endif ?> </ul> </nav> |
Nah Seperti itulah cara bagaimana membuat pagination dan Search pada codeigniter4, sepertinya kita sudah membahas semua tentang codeigniter4 kalian bisa kembangkan kembali dengan apa yang kalian pelajari disini, dan semoga bisa membantu untuk blog ini.
mungkin teman-teman ada saran untuk dibuatkan tutorial apa lagi hehehe maaf jika memang ada sedikit atau banyak ketidak sesuaian maklum masih belajar.
Terus semangat buat ngoding agar bisa menjadi pro dalam bidang development website terutama
2 Komentar
Borisinil.com · 13/03/2021 pada 12:49 pm
Optimasi kecepatan blog nya, mantap, cuma saran saya untuk post bergambar sebaiknya optimasi gambar nya, gunakan JPEG Progresif. kemudian Kecilkan file size gambar nya biar loading nya lebih cepat. Atau bisa juga dengan Mengubah file gambar ke format jpeg 2000, jxr atau webp.
admin · 15/03/2021 pada 3:25 pm
siapp gan di coba gan sarannya terimakasih banyak gan untuk sarannya terimakasih