Membuat Pagination Detail Dengan Codeigniter

Halo Dumenity, selamat datang kembali di website tips dan trik Dumet School. Berjumpa kembali dengan saya pada pembahasan tips seputar dunia website,pada kesempatan kali ini saya akan memberikan tips tentang Membuat Pagination Detail Dengan Codeigniter dimana pada artikel kali ini kita akan membuat sebuah pagination detail. Jadi pada saat kita berada di halaman detail akan ada pagination prev dan next, prev akan tampil dengan title sebelumnya dan next juga akan tampil title sesudahnya data detail.

Baik langsung saja kita implementasikan Membuat Pagination Detail Dengan Codeigniter pertama – tama buat database nya dan buat table di dalamnya dengan field seperti gambar di bawah ini

Membuat Pagination Detail Dengan Codeigniter

Dan isikan datanya

Membuat Pagination Detail Dengan Codeigniter

Pada table nya saya memberikan nama post kemudian memiliki struktur dan isi datanya seperti gambar di atas ini , kemudian download codeigniter nya dan lakukan konfigurasi database sesuai dengan nama nya di file config/database.php

Membuat Pagination Detail Dengan Codeigniter

Kemudian buat controller dengan nama Blog.php dan berikan script di bawah ini

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Blog extends CI_Controller {
	public function __construct(){
		parent:: __construct();
		$this->load->database();	
		$this->load->helper(array('url'));

	}
	public function index()
	{
		$data['data'] = $this->db->get('post')->result();
		$this->load->view('blog_view',$data);
	}
}

Dan kita buat file di view/blog_view.php dan kita tampilkan datanya

<!DOCTYPE html>
<html>
<head>
	<title></title>
	<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
	<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js"></script>
	<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>
</head>
<body>
	<div class="container">
		<div class="row">
			<div class="col">
				<h1>Halaman Blog</h1>
				<?php foreach($data as $rows){ ?>
					<h2><?php echo ucwords($rows->title) ?></h2>
					<p><?php echo substr($rows->detail_post, 0,300).'...' ?></p>
					<a href="<?php echo site_url('blog/detail/').$rows->id; ?>" class="btn btn-primary">More >></a>
				<?php } ?>
			</div>
		</div>
	</div>
</body>
</html>

Maka akan tampil seperti gambar di bawah ini

Membuat Pagination Detail Dengan Codeigniter

Kemudian kita buat halaman detailnya, dan buat metod di dalam controller blog untuk menampilkan hasil dari klik button more

public function detail($id)
	{
		$data['data'] = $this->db->get_where('post',['id'=>$id])->row();
		$this->load->view('detail_post',$data);
	}

Kemudian kita buat file detail_post.php pada viewnya dan tinggal kita tampilkan

<!DOCTYPE html>
<html>
<head>
	<title></title>
	<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css">
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
	<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js"></script>
	<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>
</head>
<body>
	<div class="container">
		<div class="row">
			<div class="col">
				<h1>Detail News</h1>
				<h2><?php echo $data->title ?></h2>
				<p><?php echo $data->detail_post ?></p>
			</div>
		</div>
	</div>
</body>
</html>

Maka akan tampil seperti gambar di bawah ini

Membuat Pagination Detail Dengan Codeigniter

Kemudian kita buat fitur pagination detailny, kita tambahkan proses ambil datanya masih di dalam metod detailnya

$data['prev'] = $this->db->query("SELECT * FROM post WHERE id < '$id' ORDER BY id DESC LIMIT 1")->row();
$data['next'] = $this->db->query("SELECT * FROM post WHERE id > '$id' ORDER BY id ASC LIMIT 1")->row();

Membuat Pagination Detail Dengan Codeigniter

Dan tinggal kita tampilkan pada halaman detail news nya

<?php if(isset($prev->id)){ ?>
	<a href="<?php echo site_url('blog/detail/'). $prev->id ?>" style="float: left;"><?php echo ucwords($prev->title) ?></a>
<?php } ?>
<?php if(isset($next->id)){ ?>
	<a href="<?php echo site_url('blog/detail/'). $next->id ?>" style="float: right;"><?php echo ucwords($next->title) ?></a>
<?php } ?>

Membuat Pagination Detail Dengan Codeigniter

Jika sudah save dan refresh pada browsernya kemudian buka detail post nya, maka akan tampil pagination prev dan next tampil dari title sebelum dan sesudah detailnya.

Membuat Pagination Detail Dengan Codeigniter

Nah demikianlah tips cara Membuat Pagination Detail Dengan Codeigniter kita berjumpa kembali pada artikel selanjutnya. Terimakasih dan sampai jumpa, semoga bermanfaat.

Hernowo Author

Leave a Reply

Your email address will not be published. Required fields are marked *