CodeIgniter adalah framework PHP yang ringan dan powerful, sangat populer di kalangan pengembang web karena kemudahan penggunaan dan kinerjanya yang cepat. Salah satu operasi dasar yang sering dilakukan dalam pengembangan aplikasi web adalah operasi CRUD (Create, Read, Update, Delete) pada basis data. Dalam artikel ini, kita akan mempelajari bagaimana cara membuat operasi CRUD dengan menggunakan CodeIgniter 3 dan MySQL sebagai database.
1. Persiapan Lingkungan Pengembangan
Sebelum memulai, pastikan Anda sudah menyiapkan lingkungan pengembangan dengan beberapa alat berikut:
- PHP (versi 5.6 atau lebih baru)
- MySQL atau MariaDB
- CodeIgniter 3: Unduh versi terbaru CodeIgniter 3 di situs resmi CodeIgniter.
Setelah Anda mengunduh dan menyiapkan CodeIgniter, ekstrak file CodeIgniter dan tempatkan di folder server web Anda (misalnya, di folder htdocs
jika Anda menggunakan XAMPP atau di folder www
jika menggunakan WAMP).
2. Mengonfigurasi Database MySQL
Sebelum mulai membuat operasi CRUD, Anda harus membuat database di MySQL yang akan digunakan oleh aplikasi CodeIgniter.
2.1. Membuat Database dan Tabel
- Masuk ke phpMyAdmin atau gunakan alat manajemen MySQL lain untuk membuat database.
- Buat database baru dengan nama
crud_db
. - Buat tabel untuk menyimpan data. Sebagai contoh, kita akan membuat tabel
users
dengan struktur seperti berikut:
CREATE DATABASE crud_db;
USE crud_db;
CREATE TABLE users (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
email VARCHAR(100) NOT NULL,
phone VARCHAR(15) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Tabel users
ini memiliki kolom id
, name
, email
, phone
, dan created_at
.
3. Mengonfigurasi CodeIgniter untuk Menghubungkan ke Database
Setelah membuat database dan tabel, langkah selanjutnya adalah mengonfigurasi CodeIgniter agar dapat terhubung ke database yang telah dibuat.
- Buka folder aplikasi CodeIgniter Anda dan buka file
application/config/database.php
. - Temukan pengaturan koneksi database dan sesuaikan dengan detail database Anda:
$db['default'] = array(
'dsn' => '',
'hostname' => 'localhost',
'username' => 'root', // Ganti dengan username MySQL Anda
'password' => '', // Ganti dengan password MySQL Anda
'database' => 'crud_db',
'dbdriver' => 'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT !== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' => 'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
4. Membuat Model untuk Operasi Database
Model adalah tempat kita menulis query database. Di CodeIgniter, model bertanggung jawab untuk berinteraksi dengan database.
4.1. Membuat Model User_model
Buat model di dalam folder application/models/
. Misalnya, kita buat model dengan nama User_model.php
. File ini akan berisi fungsi-fungsi untuk operasi CRUD.
db->insert('users', $data);
}
// Read: Mengambil semua data pengguna
public function get_all_users() {
$query = $this->db->get('users');
return $query->result();
}
// Update: Mengubah data pengguna berdasarkan ID
public function update_user($id, $data) {
$this->db->where('id', $id);
return $this->db->update('users', $data);
}
// Delete: Menghapus pengguna berdasarkan ID
public function delete_user($id) {
$this->db->where('id', $id);
return $this->db->delete('users');
}
// Read: Mengambil data pengguna berdasarkan ID
public function get_user_by_id($id) {
$this->db->where('id', $id);
$query = $this->db->get('users');
return $query->row();
}
}
Fungsi-fungsi di atas adalah:
insert_user
: Menambahkan data pengguna baru.get_all_users
: Mengambil semua data pengguna dari tabel.update_user
: Memperbarui data pengguna berdasarkan ID.delete_user
: Menghapus data pengguna berdasarkan ID.get_user_by_id
: Mengambil data pengguna berdasarkan ID.
5. Membuat Controller untuk Menangani Request CRUD
Controller bertanggung jawab untuk menerima input dari pengguna, memanggil model untuk mengakses data, dan menampilkan hasil ke pengguna. Kita akan membuat controller User.php
untuk menangani operasi CRUD.
5.1. Membuat Controller User.php
Buat file controller di dalam folder application/controllers/
. Nama file controller ini adalah User.php
.
load->model('User_model');
}
// Menampilkan semua pengguna
public function index() {
$data['users'] = $this->User_model->get_all_users();
$this->load->view('user/index', $data);
}
// Menambahkan pengguna baru
public function create() {
if ($this->input->post()) {
$data = array(
'name' => $this->input->post('name'),
'email' => $this->input->post('email'),
'phone' => $this->input->post('phone')
);
$this->User_model->insert_user($data);
redirect('user');
}
$this->load->view('user/create');
}
// Mengedit pengguna berdasarkan ID
public function edit($id) {
$data['user'] = $this->User_model->get_user_by_id($id);
if ($this->input->post()) {
$data = array(
'name' => $this->input->post('name'),
'email' => $this->input->post('email'),
'phone' => $this->input->post('phone')
);
$this->User_model->update_user($id, $data);
redirect('user');
}
$this->load->view('user/edit', $data);
}
// Menghapus pengguna berdasarkan ID
public function delete($id) {
$this->User_model->delete_user($id);
redirect('user');
}
}
Controller ini menangani empat operasi utama:
index()
: Menampilkan semua pengguna.create()
: Menambahkan pengguna baru ke database.edit($id)
: Mengedit data pengguna berdasarkan ID.delete($id)
: Menghapus pengguna berdasarkan ID.
6. Membuat View untuk Tampilan Pengguna
Sekarang, kita perlu membuat tampilan (view) untuk menampilkan data pengguna dan form input. Tampilan ini akan berada di dalam folder application/views/
.
6.1. View index.php
(Menampilkan Semua Pengguna)
Buat file index.php
di folder application/views/user/
untuk menampilkan daftar pengguna.
Daftar Pengguna
Daftar Pengguna
ID | Nama | Telepon | Aksi | |
---|---|---|---|---|
id) ?>">Edit id) ?>">Hapus |
6.2. View create.php
(Form Tambah Pengguna)
create.php
(Form Tambah Pengguna)Buat file
create.php
di folder application/views/user/
untuk form input pengguna baru.
Tambah Pengguna
Tambah Pengguna Baru
6.3. View edit.php
(Form Edit Pengguna)
edit.php
(Form Edit Pengguna)Buat file
edit.php
di folder application/views/user/
untuk form edit pengguna.
Edit Pengguna
Georgia Reader Reply
Et rerum totam nisi. Molestiae vel quam dolorum vel voluptatem et et. Est ad aut sapiente quis molestiae est qui cum soluta. Vero aut rerum vel. Rerum quos laboriosam placeat ex qui. Sint qui facilis et.