Days
Hours
Minutes
Seconds

Promo Grand Opening

15% OFF

Khusus Pelanggan Baru

Tutorial CodeIgniter #2: Memahami Controller

Tentu, berikut adalah artikel tutorial tentang Controller pada CodeIgniter.


 

 

Selamat datang kembali di seri tutorial CodeIgniter! Setelah pada bagian sebelumnya kita mengenal dasar-dasar CodeIgniter, kini saatnya kita masuk ke komponen inti dari arsitektur MVC (Model-View-Controller), yaitu Controller. Controller adalah “otak” dari aplikasi Anda. Ia berfungsi sebagai jembatan antara Model (data) dan View (tampilan) dengan mengatur alur logika dan interaksi pengguna.

 

Apa Itu Controller?

 

Secara sederhana, Controller adalah sebuah kelas PHP yang bertanggung jawab untuk menerima permintaan (request) dari pengguna, memprosesnya, dan memberikan respons. Ketika seorang pengguna mengakses sebuah URL, CodeIgniter akan mengarahkan permintaan tersebut ke fungsi (method) yang sesuai di dalam sebuah Controller.

Tanggung jawab utama Controller meliputi:

  • Menerima Permintaan: Mendeteksi permintaan HTTP dari pengguna, seperti GET atau POST.
  • Mengolah Logika: Memuat Model untuk berinteraksi dengan database, memvalidasi data, atau melakukan perhitungan.
  • Mengatur Data: Mengirim data yang telah diproses dari Model ke View.
  • Memberikan Respons: Memuat View (tampilan) dan mengirimkannya kembali ke browser pengguna.

 

Struktur Dasar Controller

 

Dalam CodeIgniter, setiap Controller adalah sebuah kelas PHP yang harus diakhiri dengan nama Controller dan disimpan di dalam folder app/Controllers.

Berikut adalah contoh struktur dasar sebuah Controller:

PHP

<?php

namespace App\Controllers;

class Home extends BaseController
{
    public function index()
    {
        return view('welcome_message');
    }
}

Mari kita bedah kode di atas:

  • namespace App\Controllers;: Ini adalah deklarasi namespace yang mengacu pada lokasi folder Controller.
  • class Home extends BaseController: Ini adalah deklarasi kelas Controller. Semua Controller Anda harus mewarisi kelas BaseController untuk mendapatkan fitur-fitur dasar yang diperlukan. Nama kelas, dalam hal ini Home, akan digunakan dalam URL.
  • public function index(): Ini adalah sebuah method di dalam kelas Controller. Secara default, jika tidak ada method yang disebutkan dalam URL, CodeIgniter akan memanggil method index(). Method ini akan memuat view dengan nama welcome_message.

 

Membuat Controller Baru

 

Mari kita buat Controller sederhana yang akan menampilkan halaman “Selamat Datang”.

Langkah 1: Buat File Controller

Buat file baru di direktori app/Controllers dan beri nama Welcome.php.

Langkah 2: Tulis Kode Controller

Isi file Welcome.php dengan kode berikut:

PHP

<?php

namespace App\Controllers;

class Welcome extends BaseController
{
    public function index()
    {
        // Mengirim data ke View
        $data['nama'] = "Budi";
        return view('halaman_welcome', $data);
    }

    public function salam($nama = "Guest")
    {
        echo "Halo, " . $nama . "! Selamat datang di CodeIgniter.";
    }
}

Dalam contoh ini, kita memiliki dua method:

  • index(): Akan memuat sebuah view bernama halaman_welcome dan mengirimkan variabel $data ke dalamnya. Variabel ini berisi data yang bisa diakses di view.
  • salam($nama = "Guest"): Method ini akan menerima satu parameter $nama. Jika parameter tidak diberikan, nilai default-nya adalah “Guest”. Method ini akan langsung mencetak string ke layar.

 

Membuat View untuk Controller

 

Agar Controller kita bisa menampilkan halaman yang utuh, kita perlu membuat view. Buat file baru di direktori app/Views dan beri nama halaman_welcome.php.

Isi file tersebut dengan kode HTML berikut:

HTML

<!DOCTYPE html>
<html>
<head>
    <title>Halaman Selamat Datang</title>
</head>
<body>
    <h1>Selamat datang, <?php echo $nama; ?>!</h1>
    <p>Ini adalah halaman yang diatur oleh Controller Welcome.</p>
</body>
</html>

Perhatikan bahwa kita bisa mengakses variabel $nama yang dikirim dari Controller di dalam view ini.

 

Cara Mengakses Controller

 

Sekarang, mari kita lihat bagaimana cara mengaksesnya melalui URL:

  • Untuk method index(): Buka browser dan kunjungi http://localhost/nama_proyek/public/welcome. Secara default, index() akan dipanggil.
  • Untuk method salam(): Buka browser dan kunjungi http://localhost/nama_proyek/public/welcome/salam. Jika Anda ingin mengirim parameter, tambahkan di belakangnya: http://localhost/nama_proyek/public/welcome/salam/Andi.

 

Kesimpulan

 

Controller adalah bagian vital dalam alur kerja CodeIgniter. Ia adalah pusat kendali yang menghubungkan permintaan pengguna dengan data (melalui Model) dan tampilan (melalui View). Dengan memahami bagaimana membuat dan menggunakan Controller, Anda kini memiliki pondasi yang kuat untuk membangun aplikasi web yang terstruktur dan dinamis. Pada tutorial selanjutnya, kita akan membahas tentang Model dan bagaimana cara berinteraksi dengan database.

Wawasan Terbaru

Gemini_Generated_Image_wfw5uwwfw5uwwfw5
Mengenal Dunia Grafis: Dari Piksel Hingga Vektor, Kekuatan Visual di Era Digital
Gemini_Generated_Image_b6dimfb6dimfb6di
Mengenal Foundation: Kerangka Kerja Front-End Profesional untuk Web Responsif
Gemini_Generated_Image_sx3ztpsx3ztpsx3z
CSS
Mempercantik Website dengan CSS: Seniman di Balik Tampilan Web 🎨
Gemini_Generated_Image_e013qke013qke013
Mengenal HTML: Fondasi dari Setiap Halaman Website 🌐
Gemini_Generated_Image_ldki4nldki4nldki
Menyelami Dunia Coding: Seni Berbicara dengan Komputer
Gemini_Generated_Image_dpvliydpvliydpvl
Menguasai GIT: Fondasi Penting dalam Dunia Pengembangan Perangkat Lunak
Gemini_Generated_Image_sqcib9sqcib9sqci
Tutorial Python #12: Mengenal Jenis-jenis Operator dalam Python
Gemini_Generated_Image_o1bw3do1bw3do1bw
Memahami Tipe Data Dictionary dalam Python
Gemini_Generated_Image_ko4ixfko4ixfko4i
Mengenal Tipe Data Set dalam Python
Gemini_Generated_Image_1xop7m1xop7m1xop
Tuple dalam Python: Pengenalan dan Tutorial

Wawasan Serupa

Gemini_Generated_Image_4mxd334mxd334mxd
Gemini_Generated_Image_ursc84ursc84ursc
ef5c8286-b6c4-4e25-b155-697374d570dc
Gemini_Generated_Image_m1hsycm1hsycm1hs

Ceritakan Detail Proyekmu

Mulai dari 30K aja, solusi IT kamu langsung jalan tanpa drama.

Kata Mereka Tentang Solusi Coding

Dipercaya oleh lebih dari 200++ client untuk menyelesaikan proyeknya dengan total 250++ proyek dari berbagai jenis proyek