Image Load

Hello world,

Pada contoh sebelumnya yaitu Menampilkan Data dari Database (Controller + Model + View) Part 1, saya sudah coba membuat contoh bagaimana cara menampilkan data dari database dalam bentuk list artikel. Kali ini akan ada lanjutannya yaitu bagaimana jika list artikel tersebut diklik dan dibuka salah satu artikel. Dengan kasus seperti ini maka kita akan membuat sebuah halaman yang berisi detail artikel dengan memanggil data artikel berdasarkan id atau url yang dipilih.

Langkah pertama kita buat sebuah method yang di sini saya beri nama "baca" pada Controller "Blog" (file application/controllers/Blog.php). contohnya seperti berikut.

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Blog extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('m_blog');
$this->load->helper('url');
}
public function index()
{
$data['blog'] = $this->m_blog->get_data();

$this->load->view('header');
$this->load->view('home', $data);
$this->load->view('footer');
}

public function baca($id)
{
$data['blog'] = $this->m_blog->get_detail($id);

$this->load->view('header');
$this->load->view('baca', $data);
$this->load->view('footer');
}

}

Kemudian kita menambahkan pada application/models/M_blog.php.

<?php
class M_blog extends CI_Model
{
public function __construct()
{
$this->load->database();
}
public function get_data()
{
$query = $this->db->get('blog');
return $query->result_array();
}
public function get_detail($id)
{
$this->db->where('id', $id);
$query = $this->db->get('blog');
return $query->row_array();
}

}

Selanjutnya kita buat view pada folder application/views seperti berikut.

<!-- Main Content -->
<div class="container">
<div class="row">
<div class="col-lg-8 col-md-10 mx-auto">
<div class="post-preview">
<a href="post.html">
<h2 class="post-title">
<?php echo $blog['judul']; ?>
</h2>
<h3 class="post-subtitle">
<?php echo $blog['konten']; ?>
</h3>
</a>
<p class="post-meta">Posted by
<a href="#">Start Bootstrap</a>
<?php echo $blog['tanggal']; ?>
</p>
</div>
<hr>
</div>
</div>

<hr>

Pada tahap ini kita sudah bisa mengakses salah satu artikel dengan url http://localhost/codeigniter-modul/blog/baca/2. Pada kasus biasanya untuk membuka sebuah artikel kita akan klik pada list/thumbnail artikel yang tersedia. Oleh karena itu kita update juga file application/views/home.php menjadi seperti berikut.

<!-- Main Content -->
<div class="container">
<div class="row">
<div class="col-lg-8 col-md-10 mx-auto">
<?php foreach($blog as $listblog): ?>
<div class="post-preview">
<a href="<?=base_url()?>blog/baca/<?php echo $listblog['id']; ?>">
<h2 class="post-title">
<?php echo $listblog['judul']; ?>
</h2>
<h3 class="post-subtitle">
<?php echo $listblog['konten']; ?>
</h3>
</a>
<p class="post-meta">Posted by
<a href="#">Start Bootstrap</a>
<?php echo $listblog['tanggal']; ?>
</p>
</div>
<hr>
<?php endforeach; ?>
</div>
</div>

<hr>


Selamat mencoba :)