Membangun Aplikasi Web CRUD Menggunakan CodeIgniter 4

CodeIgniter 4 CRUD Tutorial

Jika kamu tertarik untuk membangun aplikasi web dinamis 💻, maka memahami konsep CRUD (Create, Read, Update, Delete) sangatlah penting. Dalam artikel ini, kita akan membahas bagaimana cara membangun aplikasi web CRUD menggunakan CodeIgniter 4 — framework PHP modern yang ringan, cepat, dan efisien 🚀.

Dengan memahami tutorial ini, kamu akan bisa membuat aplikasi sederhana seperti manajemen data produk, pengguna, atau inventori yang dapat digunakan untuk kebutuhan bisnis maupun pembelajaran web development.

1. Apa Itu CRUD?

Fungsi Utama CRUD dalam Aplikasi Web

CRUD adalah singkatan dari Create, Read, Update, Delete yang merupakan empat operasi dasar dalam pengelolaan data:

Operasi Deskripsi
Create Menambahkan data baru ke database ➕
Read Menampilkan data dari database 📄
Update Memperbarui data yang sudah ada ✏️
Delete Menghapus data dari database 🗑️

CRUD merupakan pondasi dari hampir semua aplikasi web yang berinteraksi dengan database, seperti sistem manajemen pengguna, blog, atau e-commerce.

2. Persiapan Lingkungan CodeIgniter 4

Instalasi dan Setup Awal

Sebelum mulai coding, pastikan kamu sudah menyiapkan lingkungan berikut:

  • PHP versi 7.4 atau lebih tinggi
  • Composer (dependency manager)
  • MySQL atau MariaDB
  • Server lokal seperti XAMPP atau Laragon

Untuk menginstal CodeIgniter 4, jalankan perintah berikut di terminal:

composer create-project codeigniter4/appstarter ci4_crud

Setelah instalasi selesai, jalankan server lokal menggunakan perintah:

php spark serve

Buka http://localhost:8080 di browser untuk memastikan CodeIgniter berhasil dijalankan ✅.

3. Membuat Database dan Tabel

Struktur Database CRUD

Kita akan membuat database bernama db_crud dengan tabel produk untuk menyimpan data barang.

CREATE DATABASE db_crud;

USE db_crud;

CREATE TABLE produk (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
nama_produk VARCHAR(100),
harga INT(11),
deskripsi TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

Setelah itu, ubah konfigurasi database di file .env atau app/Config/Database.php seperti berikut:

database.default.hostname = localhost database.default.database = db_crud database.default.username = root database.default.password = database.default.DBDriver = MySQLi

4. Membuat Model

Model Produk

Model berfungsi untuk menghubungkan aplikasi dengan database. Buat file baru app/Models/ProdukModel.php dan tambahkan kode berikut:

<?php namespace App\Models; use CodeIgniter\Model;

class ProdukModel extends Model {
protected $table = 'produk';
protected $primaryKey = 'id';
protected $allowedFields = ['nama_produk', 'harga', 'deskripsi'];

Model ini akan digunakan untuk operasi CRUD pada tabel produk.

5. Membuat Controller

Controller Produk

Buat file app/Controllers/Produk.php dan isi dengan kode berikut:

<?php namespace App\Controllers; use App\Models\ProdukModel; use CodeIgniter\Controller;

class Produk extends Controller {
public function index() {
$model = new ProdukModel();
$data['produk'] = $model->findAll();
return view('produk_view', $data);
}

public function create() {
    return view('produk_add');
}

public function store() {
    $model = new ProdukModel();
    $model->save([
        'nama_produk' => $this->request->getPost('nama_produk'),
        'harga' => $this->request->getPost('harga'),
        'deskripsi' => $this->request->getPost('deskripsi')
    ]);
    return redirect()->to('/produk');
}

public function edit($id) {
    $model = new ProdukModel();
    $data['produk'] = $model->find($id);
    return view('produk_edit', $data);
}

public function update($id) {
    $model = new ProdukModel();
    $model->update($id, [
        'nama_produk' => $this->request->getPost('nama_produk'),
        'harga' => $this->request->getPost('harga'),
        'deskripsi' => $this->request->getPost('deskripsi')
    ]);
    return redirect()->to('/produk');
}

public function delete($id) {
    $model = new ProdukModel();
    $model->delete($id);
    return redirect()->to('/produk');

6. Membuat View

Menampilkan Data Produk

Buat file app/Views/produk_view.php untuk menampilkan data:

<h2>Daftar Produk</h2> <a href="/produk/create">Tambah Produk</a> <table border="1" cellpadding="5"> <tr><th>ID</th><th>Nama</th><th>Harga</th><th>Deskripsi</th><th>Aksi</th></tr> <?php foreach ($produk as $p): ?> <tr> <td><?= $p['id']; ?></td> <td><?= $p['nama_produk']; ?></td> <td><?= $p['harga']; ?></td> <td><?= $p['deskripsi']; ?></td> <td> <a href="/produk/edit/<?= $p['id']; ?>">Edit</a> | <a href="/produk/delete/<?= $p['id']; ?>" onclick="return confirm('Yakin?')">Hapus</a> </td> </tr> <?php endforeach; ?> </table>

7. Menambahkan Route

Konfigurasi Routing

Buka file app/Config/Routes.php dan tambahkan rute berikut:

$routes->get('/produk', 'Produk::index'); $routes->get('/produk/create', 'Produk::create'); $routes->post('/produk/store', 'Produk::store'); $routes->get('/produk/edit/(:num)', 'Produk::edit/$1'); $routes->post('/produk/update/(:num)', 'Produk::update/$1'); $routes->get('/produk/delete/(:num)', 'Produk::delete/$1');

Dengan begitu, aplikasi CRUD kamu siap digunakan 🎉.

8. Testing Aplikasi CRUD

Langkah Pengujian

  • ✅ Akses http://localhost:8080/produk untuk melihat daftar produk.
  • ➕ Tambahkan produk baru melalui menu Tambah Produk.
  • ✏️ Edit produk yang sudah ada.
  • 🗑️ Hapus produk yang tidak diperlukan.

Setelah semua berfungsi, kamu sudah berhasil membuat aplikasi CRUD sederhana menggunakan CodeIgniter 4!

FAQ (13 Pertanyaan Umum tentang CRUD di CodeIgniter 4)

  1. Apa itu CRUD? Operasi dasar untuk mengelola data di database (Create, Read, Update, Delete).
  2. Apa keunggulan CodeIgniter 4? Ringan, cepat, dan mudah digunakan.
  3. Apakah CodeIgniter 4 menggunakan MVC? Ya, arsitektur utama CodeIgniter 4 berbasis MVC.
  4. Bisakah CRUD dijalankan tanpa database? Tidak, karena CRUD berhubungan langsung dengan data.
  5. Apakah CodeIgniter 4 mendukung REST API? Ya, sangat mendukung.
  6. Bagaimana cara menjalankan aplikasi? Gunakan perintah php spark serve.
  7. Apakah bisa menggunakan database lain selain MySQL? Bisa, termasuk PostgreSQL dan SQLite.
  8. Bagaimana cara validasi form input? Gunakan library Validation di CodeIgniter.
  9. Bisakah upload gambar di CodeIgniter 4? Bisa menggunakan helper File Upload.
  10. Apakah cocok untuk aplikasi skala besar? Cocok untuk proyek kecil hingga menengah.
  11. Apakah bisa menggunakan template HTML? Ya, dengan menambahkan file di folder Views.
  12. Apa itu Controller di CodeIgniter? Komponen yang mengatur logika aplikasi dan interaksi data.
  13. Bagaimana cara deploy ke server? Upload semua file dan sesuaikan konfigurasi database di server hosting.

Kesimpulan

Membangun aplikasi web CRUD dengan CodeIgniter 4 sangat mudah dan efisien 💡. Framework ini cocok bagi kamu yang ingin memahami dasar pengelolaan data web dengan struktur yang jelas dan performa cepat ⚡.

Dengan pemahaman CRUD, kamu sudah memiliki pondasi kuat untuk mengembangkan berbagai aplikasi web profesional di masa depan 🚀.

Belum ada Komentar untuk "Membangun Aplikasi Web CRUD Menggunakan CodeIgniter 4"

Posting Komentar

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel