Tutorial Membuat Pagination Pada CodeIgniter
- Panduan Lengkap VM - Juli 29, 2024
- Panduan Pembayaran Via Bank Mandiri - Juli 2, 2024
- PHP X-Ray di cPanel untuk Optimasi Kecepatan Web - April 18, 2023
Dalam membuat pagination kamu cukup menjalankan library pagination codeIgniter dan setting. Mau tau gimana caranya ? Ayo sob, langsung aja simak panduan dibawah ini.
STEP 1. Setting base_url di application/config/config.php. Sesuaikan nama project kamu sendiri.
1 | $config['base_url'] = 'http://localhost/sobatjagoan_paging/'; |
STEP 2. Hubungkan codeIgniter kamu dengan database mysql melalui application/config/database.php
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
$db['default'] = array(
'dsn' => '', 'hostname' => 'localhost', 'username' => 'root', 'password' => 'xxx', 'database' => 'sobatjagoan', 'dbdriver' => 'mysqli', 'dbprefix' => '', 'pconnect' => FALSE, 'db_debug' => (ENVIRONMENT !== 'production'), 'cache_on' => FALSE, 'cachedir' => '', 'char_set' => 'utf8', 'dbcollat' => 'utf8_general_ci', 'swap_pre' => '', 'encrypt' => FALSE, 'compress' => FALSE, 'stricton' => FALSE, 'failover' => array(), 'save_queries' => TRUE ); |
STEP 3. Kamu bisa setting usernmae, password, dan nama database. Contoh nama database adalah sobatjagoan.
Sebagai contoh, berikut adalah file sql sobatjagoan untuk membuat pagination, sobatjagoan.sql
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 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
-- phpMyAdmin SQL Dump
-- version 3.5.2.2 -- http://www.phpmyadmin.net -- -- Host: 127.0.0.1 -- Generation Time: Jan 22, 2016 at 02:33 PM -- Server version: 5.5.27 -- PHP Version: 5.4.7
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8 */;
-- -- Database: `sobatjagoan` --
-- --------------------------------------------------------
-- -- Table structure for table `user` --
CREATE TABLE IF NOT EXISTS `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `nama` varchar(50) NOT NULL, `alamat` text NOT NULL, `pekerjaan` varchar(50) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=63 ;
-- -- Dumping data for table `user` --
INSERT INTO `user` (`id`, `nama`, `alamat`, `pekerjaan`) VALUES (1, 'Andi', 'Surabaya', 'web programmer'), (2, 'Santoso', 'Jakarta', 'Web Designer'), (6, 'Samsul', 'Sumedang', 'Pegawai'), (7, 'Bob', 'jakarta', 'penyanyi'), (8, 'marley', 'afrika', 'penyanyi'), (9, 'Bob', 'jakarta', 'penyanyi'), (10, 'Bob', 'jakarta', 'penyanyi'), (11, 'Bob', 'jakarta', 'penyanyi'), (12, 'Bob', 'jakarta', 'penyanyi'), (13, 'Bob', 'jakarta', 'penyanyi'), (14, 'Bob', 'jakarta', 'penyanyi'), (15, 'Bob', 'jakarta', 'penyanyi'), (16, 'Bob', 'jakarta', 'penyanyi'), (17, 'Bob', 'jakarta', 'penyanyi'), (18, 'marley', 'afrika', 'penyanyi'), (19, 'Bob', 'jakarta', 'penyanyi'), (20, 'Bob', 'jakarta', 'penyanyi'), (21, 'Bob', 'jakarta', 'penyanyi'), (22, 'Bob', 'jakarta', 'penyanyi'), (23, 'Bob', 'jakarta', 'penyanyi'), (24, 'Bob', 'jakarta', 'penyanyi'), (25, 'Bob', 'jakarta', 'penyanyi'), (26, 'Bob', 'jakarta', 'penyanyi'), (27, 'Bob', 'jakarta', 'penyanyi'), (28, 'Bob', 'jakarta', 'penyanyi'), (29, 'Bob', 'jakarta', 'penyanyi'), (30, 'Bob', 'jakarta', 'penyanyi'), (31, 'Bob', 'jakarta', 'penyanyi'), (32, 'marley', 'afrika', 'penyanyi'), (33, 'Bob', 'jakarta', 'penyanyi'), (34, 'Bob', 'jakarta', 'penyanyi'), (35, 'Bob', 'jakarta', 'penyanyi'), (36, 'Bob', 'jakarta', 'penyanyi'), (37, 'Bob', 'jakarta', 'penyanyi'), (38, 'Bob', 'jakarta', 'penyanyi'), (39, 'Bob', 'jakarta', 'penyanyi'), (40, 'Bob', 'jakarta', 'penyanyi'), (41, 'Bob', 'jakarta', 'penyanyi'), (42, 'Bob', 'jakarta', 'penyanyi'), (43, 'Bob', 'jakarta', 'penyanyi'), (44, 'Bob', 'jakarta', 'penyanyi'), (45, 'Bob', 'jakarta', 'penyanyi'), (46, 'Bob', 'jakarta', 'penyanyi'), (47, 'marley', 'afrika', 'penyanyi'), (48, 'Bob', 'jakarta', 'penyanyi'), (49, 'Bob', 'jakarta', 'penyanyi'), (50, 'Bob', 'jakarta', 'penyanyi'), (51, 'Bob', 'jakarta', 'penyanyi'), (52, 'Bob', 'jakarta', 'penyanyi'), (53, 'Bob', 'jakarta', 'penyanyi'), (54, 'Bob', 'jakarta', 'penyanyi'), (55, 'Bob', 'jakarta', 'penyanyi'), (56, 'Bob', 'jakarta', 'penyanyi'), (57, 'Bob', 'jakarta', 'penyanyi'), (58, 'Bob', 'jakarta', 'penyanyi'), (59, 'Bob', 'jakarta', 'penyanyi'), (60, 'Bob', 'jakarta', 'penyanyi'), (61, 'Bob', 'jakarta', 'penyanyi'), (62, 'marley', 'afrika', 'penyanyi');
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; |
Dibawah ini adalah contoh database sobatjagoan ini terdapat table user yang punya beberapa record untuk membuat pagination dengan codeIgniter, melalui application/controller/welcome.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 |
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Welcome extends CI_Controller {
function __construct(){ parent::__construct(); $this->load->helper(array('url')); $this->load->model('m_data'); }
public function index(){ $this->load->database(); $jumlah_data = $this->m_data->jumlah_data(); $this->load->library('pagination'); $config['base_url'] = base_url().'index.php/welcome/index/'; $config['total_rows'] = $jumlah_data; $config['per_page'] = 10; $from = $this->uri->segment(3); $this->pagination->initialize($config); $data['user'] = $this->m_data->data($config['per_page'],$from); $this->load->view('v_data',$data); } } |
STEP 4. Buka library pagination codeigniter, dan tentukan pengaturan pagination codeigniter seperti berikut
1
2 3 |
$config['base_url'] = base_url().'index.php/welcome/index/';
$config['total_rows'] = $jumlah_data; $config['per_page'] = 10; |
Pengaturan per page = jumlah record yang ditampilkan per halaman.
Total_rows = pengaturan jumlah dari seluruh record.
Base_url = settingan url dari link pagination.
Variabel $jumlah_data = jumlah data
Seperti dibawah ini method jumlah pada model m_data, application/models/m_data.php
1
2 3 4 5 6 7 8 9 10 11 |
<?php
class M_data extends CI_Model{ function data($number,$offset){ return $query = $this->db->get('user',$number,$offset)->result(); }
function jumlah_data(){ return $this->db->get('user')->num_rows(); } } |
Model m_data terdapat dua function yang kita jadikan contoh, yang pertama function data berguna untuk mengambil data user dari record ke berapa sampai ke berapa sesuai dengan data yang dikirim pada parameter.
Yang kedua, function jumlah_data untuk mengambil jumlah seluruh record.
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 |
<!DOCTYPE html>
<html> <head> <title>Membuat Pagination Pada CodeIgniter | sobatjagoan.com</title> </head> <body> <h1>Membuat Pagination Pada CodeIgniter | sobatjagoan.com</h1> <table border="1"> <tr> <th>no</th> <th>nama</th> <th>alamat</th> <th>pekerjaan</th> </tr> <?php $no = $this->uri->segment('3') + 1; foreach($user as $u){ ?> <tr> <td><?php echo $no++; ?></td> <td><?php echo $u->nama ?></td> <td><?php echo $u->alamat ?></td> <td><?php echo $u->pekerjaan ?></td> </tr> <?php } ?> </table> <br/> <?php echo $this->pagination->create_links(); ?> </body> </html> |
STEP 5. Lihat hasilnya localhost/sobatjagoan_paging/welcome
Nah, ternyata gampang kan, Yuk simak terus Tips Hosting di halaman tutorial Jagoan Hosting Indonesia ya, jika ada bagian dari tutorial yang tidak ditemukan, kamu bisa menghubungi teman-teman di Jagoan Hosting supaya bisa dibantu lebih lanjut melalui Live Chat.