Setelah semua kita siapkan termasuk pembuatan layout lalu selanjutnya membuat halaman daftar pengguna codeigniter, dimana di halaman daftar pengguna codeigniter ini akan menampilkan daftar pengguna yang tersimpan di database.
Pertama buatlah semua file didalam folder /application/models dengan nama Pengguna_model.php, lalu masukan kode dibawah ini:
<?php if(!defined('BASEPATH')) exit ('No direct script access allowed');
class Pengguna_model extends CI_Model {
public function __construct()
{
parent::__construct();
}
public function semua()
{
$this->db->select('*');
$this->db->from('pengguna');
$this->db->order_by('id', 'DESC');
return $this->db->get();
}
Code language: HTML, XML (xml)
Kode diatas berfungsi untuk melakukan komunikasi ke database, dimana terdapat method semua()
yang berguna untuk menampilkan semua data pengguna yang tersimpan di database.
Selanjutnya buatlah sebuah file didalam folder /application/views dengan nama daftar_pengguna.php lalu masukan kode dibawah ini:
<div class="header">
<div class="title">
<h3>Daftar Pengguna</h3>
</div>
<div class="action">
<a href="<?php echo base_url('pengguna/tambah'); ?>" class="btn btn-default">Tambah</a>
</div>
</div>
<table>
<thead>
<tr>
<th style="width: 7%; text-align: center;">No</th>
<th style="width: 30%">Nama</th>
<th>Jenis Kelamin</th>
<th>Tanggal Lahir</th>
<th style="text-align: center;">Umur</th>
<th style="width: 20%; text-align: center;">Tindakan</th>
</tr>
</thead>
<tbody>
<?php if($semua_pengguna->num_rows() > 0): ?>
<?php $index = 1; ?>
<?php foreach($semua_pengguna->result() as $pengguna): ?>
<tr>
<td style="text-align: center;"><?php echo $index++; ?></td>
<td><?php echo $pengguna->nama; ?></td>
<td><?php echo $pengguna->jenis_kelamin; ?></td>
<td><?php echo date('j F Y', strtotime($pengguna->tanggal_lahir)); ?></td>
<td style="text-align: center;"><?php echo $pengguna->umur; ?></td>
<td style="text-align: center;">
<a href="<?php echo base_url('pengguna/edit/' . $pengguna->id); ?>" class="btn btn-default">Edit</a>
<a href="<?php echo base_url('pengguna/hapus/' . $pengguna->id); ?>" class="btn btn-danger">Hapus</a>
</td>
</tr>
<?php endforeach; ?>
<?php else: ?>
<tr>
<td colspan="6" style="text-align: center;">Data tidak tersedia</td>
</tr>
<?php endif; ?>
</tbody>
</table>
Code language: HTML, XML (xml)
Pada kode diatas terlihat sebuah kondisi if else, dimana apabila tidak ada data didalam database maka akan menampilkan informasi bahwa data tidak tersedia.
Selanjutnya, buat sebuah file didalam folder /application/controllers dengan nama Pengguna_controller.php lalu masukan kode dibawah ini.
<?php defined('BASEPATH') OR exit('No direct script access allowed');
class Pengguna_controller extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('pengguna_model');
}
public function index()
{
$data['semua_pengguna'] = $this->pengguna_model->semua();
$this->load->view('layouts/header');
$this->load->view('daftar_pengguna', $data);
$this->load->view('layouts/footer');
}
Code language: HTML, XML (xml)
Pada kode diatas terdapat beberapa hal yang perlu digaris bawahi yaitu cara pemanggilan model yang sebelumnya telah kita buat dan pemanggilan views (template).
Terlihat manfaat dari layout, dimana sebuah view daftar_pengguna di himpit oleh header dan footer yang artinya table pengguna akan berada diantara tag <body>
dan </body>
sehingga memudahkan kita tanpa harus mengetik tag <html>
sampai </html>
berulang-ulang.
Selanjutnya, karena di halaman pertama codeigniter kita masih berbentuk tampilan default welcome dari codeigniter maka kita perlu ubah di bagian router, nah router ini lah yang nantinya bertugas untuk mengarahkan method dan parameter-parameter yang terdapat di didalam controllers.
Buka file routes.php yang terdapat didalam folder /application/config, lalu ubah kode dibawah ini:
$route['default_controller'] = 'welcome';
Code language: PHP (php)
Menjadi
$route['default_controller'] = 'pengguna_controller';
Code language: PHP (php)
Jika sudah silahkan refresh halaman utama codeigniter anda, maka akan tampil seperti dibawah ini:
Routes tersebut bertugas untuk mendeklarasikan halaman-halaman yang akan kita gunakan, kita hanya perlu memanggil nama controller yang telah kita buat. Untuk lebih jelasnya silahkan lihat di dokumentasi resmi https://www.codeigniter.com/user_guide/general/routing.html