Jika Anda sedang belajar web development dengan CodeIgniter, salah satu skill fundamental yang harus dikuasai adalah kemampuan untuk membuat CRUD di CodeIgniter. Operasi CRUD adalah fondasi dari hampir setiap aplikasi web modern, dari aplikasi manajemen data sederhana hingga platform e-commerce yang kompleks.
CodeIgniter 3 adalah framework PHP yang sempurna untuk memahami konsep membuat CRUD di CodeIgniter secara praktis dan terstruktur. Framework ini telah digunakan oleh ribuan developer karena menyediakan structure yang jelas dengan MVC (Model-View-Controller) architecture yang mudah dipahami, sehingga proses development menjadi lebih efisien dan mudah dikembangkan.
Artikel ini akan menjelaskan secara komprehensif tentang konsep CRUD hingga bagaimana implementasinya di CodeIgniter 3. Simak informasi berikut ini.
Apa Itu CRUD?
CRUD adalah akronim dari empat operasi dasar dalam manajemen data, yaitu Create, Read, Update, dan Delete. Keempat operasi ini merupakan fundamental operations yang ada di hampir setiap aplikasi yang melibatkan database atau penyimpanan data.
Ketika Anda menggunakan aplikasi seperti media sosial, blog, atau e-commerce, setiap interaksi Anda dengan data sebenarnya adalah operasi CRUD. Misalnya, saat Anda membuat post baru, itu adalah operasi Create. Ketika membaca timeline, itu adalah operasi Read, saat mengedit profile itu adalah Update, dan saat menghapus post itu adalah Delete.
Selengkapnya tentang CRUD telah kami publikasi pada artikel berikut: Apa Itu CRUD?
CRUD pada CodeIgniter 3
CodeIgniter 3 menggunakan arsitektur MVC (Model–View–Controller) yang memisahkan responsibility menjadi tiga komponen. Berikut penjelasan fungsinya masing-masing.
- Model adalah layer yang berinteraksi dengan database dan mengelola business logic terkait data.
- View adalah layer presentasi yang menampilkan data kepada user.
- Controller adalah layer yang menerima request dari user, memproses logic, dan mengkoordinasikan antara Model dan View.
Pemisahan ini sangat baik karena membuat code lebih terorganisir dan lebih mudah dikelola atau dikembangkan. Ketika mengimplementasikan CRUD di CodeIgniter 3, setiap operasi akan didistribusikan dengan jelas. Model menangani query ke database, Controller menangani logic aplikasi, dan View menampilkan hasil kepada user.
Membuat CRUD di CodeIgniter 3
Pada artikel ini, kami akan membahas cara membuat CRUD di CodeIgniter 3 sederhana menggunakan studi kasus data karyawan. Pastikan bahwa Anda telah menginstall CodeIgniter di localhost komputer Anda. Setelah itu, Anda bisa ikuti langkah-langkah berikut ini.
Step 1. Membuat Database
Langkah pertama adalah menyiapkan database dan tabel yang akan digunakan.
- Buka phpMyAdmin melalui browser.
- Buat database baru dengan nama karyawan.
- Jalankan query berikut untuk membuat tabel:
CREATE TABLE karyawan (
id INT AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(100),
email VARCHAR(100),
jabatan VARCHAR(100),
gaji INT
);Penjelasan Struktur Tabel
- id : Primary key, auto increment
- nama : Nama karyawan
- email : Email karyawan
- jabatan : Jabatan karyawan
- gaji : Gaji karyawan
Step 2. Konfigurasi CodeIgniter
Ada 3 hal yang perlu kita konfigurasi pada CodeIgniter 3 untuk belajar membuat CRUD ini. Berikut langkah-langkahnya.
1. Konfigurasi Database
Buka file application/config/database.php, lalu sesuaikan konfigurasi berikut:
- username : username database
- password : password database
- database : nama database (karyawan)

2. Autoload Helper
Agar fungsi URL dapat digunakan, buka application/config/autoload.php lalu ubah:
$autoload['helper'] = array('url');3. Base URL
Buka file application/config/config.php dan atur base URL:
$config['base_url'] = 'http://localhost/jurnal/';Pada panduan ini, kami menggunakan URL localhost/jurnal/ sebagai contoh. Anda bisa menyesuaikan base_url sesuai dengan letak aplikasi CodeIgniter 3 yang Anda di install di komputer. Perlu diperhatikan, bahwa kesalahan penulisan base_url dapat menyebabkan aplikasi gagal akses atau munculnya error halaman tidak ditemukan dengan kode 404 not found.
Step 3. Membuat Model
Buat file Karyawan_model.php pada folder application/models.
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Karyawan_model extends CI_Model {
public function getAll()
{
return $this->db->get('karyawan')->result();
}
public function insert($data)
{
return $this->db->insert('karyawan', $data);
}
public function getById($id)
{
return $this->db->get_where('karyawan', ['id' => $id])->row();
}
public function update($id, $data)
{
$this->db->where('id', $id);
return $this->db->update('karyawan', $data);
}
public function delete($id)
{
return $this->db->delete('karyawan', ['id' => $id]);
}
}
Penjelasan Model
- getAll() : Mengambil seluruh data karyawan
- insert() : Menyimpan data baru
- getById() : Mengambil data berdasarkan ID
- update() : Memperbarui data
- delete() : Menghapus data
Model berfungsi sebagai penghubung antara aplikasi dan database.
Step 4. Membuat Controller
Buat file Karyawan.php pada folder application/controllers.
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Karyawan extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('Karyawan_model');
$this->load->helper('url');
}
public function index()
{
$data['karyawan'] = $this->Karyawan_model->getAll();
$this->load->view('karyawan/index', $data);
}
public function tambah()
{
$this->load->view('karyawan/add');
}
public function simpan()
{
$data = [
'nama' => $this->input->post('nama', TRUE),
'email' => $this->input->post('email', TRUE),
'jabatan' => $this->input->post('jabatan', TRUE),
'gaji' => $this->input->post('gaji', TRUE)
];
$this->Karyawan_model->insert($data);
redirect('karyawan');
}
public function edit($id)
{
$data['karyawan'] = $this->Karyawan_model->getById($id);
$this->load->view('karyawan/edit', $data);
}
public function update($id)
{
$data = [
'nama' => $this->input->post('nama', TRUE),
'email' => $this->input->post('email', TRUE),
'jabatan' => $this->input->post('jabatan', TRUE),
'gaji' => $this->input->post('gaji', TRUE)
];
$this->Karyawan_model->update($id, $data);
redirect('karyawan');
}
public function hapus($id)
{
$this->Karyawan_model->delete($id);
redirect('karyawan');
}
}
Controller berfungsi mengatur alur aplikasi dan menghubungkan Model dengan View.
Step 5. Membuat View
View digunakan untuk menampilkan data kepada pengguna. Pada contoh ini digunakan tiga file:
- index.php : Menampilkan daftar karyawan
- add.php : Form tambah data
- edit.php : Form edit data
Semua file view disimpan pada folder application/views/karyawan/.
Menjalankan CRUD di CodeIgniter 3
Langkah terakhir, kita dapat melakukan pengujian untuk melakukan testing CRUD dari codeIgniter yang telah kita buat. Berikut langkah-langkahnya:
- Buka halaman CodeIgniter yang telah Anda buat di localhost melalui browser. Berikut adalah contoh halaman yang telah kami buat.

- Selanjutnya, kita akan mencoba untuk menambah data karyawan. Klik tombol Tambah Karyawan pada link yang tersedia.

- Inputkan data karyawan yang baru, lalu simpan perubahannya.

- Berikut adalah contoh data hasil tambah karyawan yang telah kita buat.

Anda juga bisa memanfaatkan fitur Edit dan hapus data melalui kolom aksi. Dengan demikian, kita sudah berhasil membuat CRUD di CodeIgniter 3.
Kesimpulan
CRUD merupakan konsep dasar yang wajib dikuasai oleh setiap developer web. Dengan menerapkan konsep MVC pada CodeIgniter 3, pengelolaan data menjadi lebih terstruktur, aman, dan mudah dikembangkan. Pemahaman CRUD yang baik akan sangat membantu dalam pengembangan sistem yang lebih kompleks seperti manajemen user, produk, maupun sistem informasi perusahaan.
Untuk pengembangan aplikasi CodeIgniter 3 berjalan optimal, Anda perlu menggunakan layanan hosting yang andal dan mendukung versi PHP terbaru. Rumahweb menyediakan infrastruktur hosting yang telah dioptimalkan untuk CodeIgniter 3, lengkap dengan dukungan PHP versi terbaru, database yang stabil dan fleksibel, serta tim technical support berpengalaman.
Demikian artikel kami tentang cara membuat CRUD di CodeIgniter 3, semoga bermanfaat.


