Memahami Arsitektur MVC di CodeIgniter3

kita akan mendalami konsep Model-View-Controller (MVC) dalam CodeIgniter, sebuah framework PHP yang populer. MVC adalah pola desain yang memisahkan aplikasi menjadi tiga komponen utama: Model, View, dan Controller. Dengan memahami dan menerapkan MVC, pengembangan aplikasi menjadi lebih terstruktur dan mudah dikelola

Konsep Dasar MVC

  • Model

Model bertanggung jawab untuk berinteraksi dengan basis data dan mengelola logika bisnis. Model mengambil, menyimpan, dan memproses data yang diperlukan oleh aplikasi

  • View

View adalah komponen yang menyajikan data kepada pengguna. View biasanya berisi HTML dan dapat menampilkan data yang diterima dari controller.

  • Controller

Controller bertindak sebagai penghubung antara Model dan View. Controller menerima input dari pengguna, memprosesnya (dengan bantuan Model), dan mengirimkan hasilnya ke View untuk ditampilkan.

Membuat Controller di CodeIgniter

  • Struktur dan Lokasi

Controller disimpan dalam folder `application/controllers/`. Nama file controller harus diawali dengan huruf kapital.

  • Membuat Controller Sederhana

Contoh pembuatan controller bernama `Welcome.php`:

<?php

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

class Welcome extends CI_Controller {

    public function index()

    {

        $this->load->view('welcome_message');

    }

    public function about()

    {

        $this->load->view('about');

    }

}

Membuat Model di CodeIgniter

  • Struktur dan Lokasi

Model disimpan dalam folder `application/models/`. Nama file model harus diawali dengan huruf kapital.

  • Membuat Model Sederhana

Contoh pembuatan model bernama `User_model.php`:

<?php

class User_model extends CI_Model {

    public function __construct()

    {

        parent::__construct();

    }

    public function get_users()

    {

        $query = $this->db->get('users');

        return $query->result();

    }

}

Menghubungkan Model, View, dan Controller

  • Langkah-langkah Integrasi
  1. Memuat Model di Controller: Gunakan $this->load->model('User_model');.
  2. Mengambil Data dari Model: Panggil metode model, misalnya $data['users'] = $this->User_model->get_users();
  3. Mengirim Data ke View: Gunakan $this->load->view('user_list', $data);.
  • Contoh Implementasi

Controller `User.php`:

<?php

class User extends CI_Controller {

    public function index()

    {

        $this->load->model('User_model');

        $data['users'] = $this->User_model->get_users();

        $this->load->view('user_list', $data);

    }

}

 View `user_list.php`:

<!DOCTYPE html>

<html>

<head>

    <title>User List</title>

</head>

<body>

    <h1>Users</h1>

    <ul>

    <?php foreach ($users as $user): ?>

        <li><?php echo $user->name; ?></li>

    <?php endforeach; ?>

    </ul>

</body>

</html>

Praktik: Membuat Aplikasi Sederhana

  • Deskripsi Proyek

Membangun aplikasi sederhana untuk menampilkan daftar pengguna menggunakan arsitektur MVC.

  • Langkah-langkah Praktis
  1. Buat ModelUser_model untuk mengambil data pengguna.
  2. Buat ControllerUser untuk mengontrol alur data.
  3. Buat Viewuser_list.php untuk menampilkan data.

Selamat hari raya idul fitri

0 Comments