CRUD CodeIgniter Read Data: Cara Menampilkan Data Database MySQL Lengkap

Pada tutorial sebelumnya kita telah membahas bagaimana cara input data ke database menggunakan CodeIgniter. Setelah data berhasil disimpan ke dalam database MySQL, langkah berikutnya yang wajib dipelajari adalah bagaimana cara menampilkan data dari database menggunakan CodeIgniter.

Dalam konsep CRUD (Create, Read, Update, Delete), proses menampilkan data dikenal sebagai Read Data. Fitur ini sangat penting karena hampir semua aplikasi membutuhkan kemampuan untuk melihat informasi yang telah tersimpan di dalam database.

Melalui tutorial ini kita akan mempelajari cara mengambil data dari tabel MySQL menggunakan Model, kemudian meneruskannya ke Controller, dan akhirnya menampilkannya pada View sesuai dengan konsep MVC (Model View Controller) yang menjadi dasar framework CodeIgniter.

Jika Anda belum membaca tutorial sebelumnya mengenai proses input data, sebaiknya pelajari terlebih dahulu agar lebih mudah memahami alur kerja aplikasi yang akan kita bangun.

Tutorial CRUD CodeIgniter Menampilkan Data Database

Mengenal CRUD Read Data pada CodeIgniter

CRUD merupakan singkatan dari:

  • Create - Menambah data
  • Read - Menampilkan data
  • Update - Mengubah data
  • Delete - Menghapus data

Pada artikel ini kita fokus pada proses Read Data, yaitu mengambil data dari tabel MySQL kemudian menampilkannya ke halaman web menggunakan CodeIgniter.

Data yang akan ditampilkan berasal dari tabel tbl_siswa yang sebelumnya telah dibuat pada tutorial input data.

Alur Menampilkan Data Menggunakan CodeIgniter

Sebelum mulai menulis kode, penting untuk memahami alur kerjanya terlebih dahulu.

  1. User membuka halaman daftar siswa.
  2. Controller memanggil Model.
  3. Model mengambil data dari database.
  4. Data dikembalikan ke Controller.
  5. Controller mengirim data ke View.
  6. View menampilkan data dalam bentuk tabel.

Dengan memahami alur ini, Anda akan lebih mudah mempelajari fitur CRUD lainnya seperti Update dan Delete.

Struktur Tabel Database

Pada contoh ini kita menggunakan tabel sederhana bernama tbl_siswa.

CREATE TABLE tbl_siswa(
    id_siswa INT AUTO_INCREMENT PRIMARY KEY,
    nama VARCHAR(100)
);

Tabel tersebut berisi data siswa yang sebelumnya telah diinput menggunakan form CodeIgniter.

Mengambil Data Melalui Controller

Buka kembali file controller Siswa.php kemudian ubah method index() menjadi seperti berikut:

public function index(){

    $data['tbl_siswa'] = $this->model_data
                              ->ambil_data()
                              ->result();

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

}

Pada kode di atas terdapat beberapa proses penting:

  • Controller memanggil method ambil_data() pada Model.
  • Hasil query diubah menjadi object menggunakan result().
  • Data disimpan ke dalam array $data['tbl_siswa'].
  • Data dikirim ke file view bernama lihat.php.

Method index() akan menjadi halaman utama yang menampilkan seluruh data siswa dari database.

Membuat Function Ambil Data pada Model

Selanjutnya buka file model:

application/models/Model_data.php

Kemudian tambahkan function berikut:

function ambil_data(){

    return $this->db->get('tbl_siswa');

}

Function ini digunakan untuk mengambil seluruh data dari tabel tbl_siswa.

Query Builder CodeIgniter secara otomatis akan menghasilkan query SQL berikut:

SELECT * FROM tbl_siswa;

Dengan menggunakan Query Builder, kode menjadi lebih rapi, aman, dan mudah dipelihara dibandingkan menulis query SQL secara langsung.

Penjelasan Method get()

Perintah:

$this->db->get('tbl_siswa');

berfungsi untuk mengambil seluruh data yang terdapat pada tabel tbl_siswa.

Method ini merupakan salah satu fitur Query Builder yang paling sering digunakan dalam pengembangan aplikasi menggunakan CodeIgniter.

Keuntungan menggunakan Query Builder antara lain:

  • Kode lebih mudah dibaca.
  • Mengurangi risiko kesalahan sintaks SQL.
  • Lebih aman terhadap beberapa jenis serangan database.
  • Mudah dikembangkan untuk query yang lebih kompleks.

Membuat View untuk Menampilkan Data

Langkah berikutnya adalah membuat tampilan data.

Buat file baru pada folder:

application/views/lihat.php

Isi file tersebut dengan kode berikut:

<html>
<head>
    <title>Data Siswa</title>
</head>

<body>

<table border="1">

    <tr>
        <td>No</td>
        <td>Nama</td>
    </tr>

    <?php

    $no = 1;

    foreach($tbl_siswa as $d){

    ?>

    <tr>
        <td><?php echo $no++; ?></td>
        <td><?php echo $d->nama; ?></td>
    </tr>

    <?php } ?>

</table>

</body>
</html>

Penjelasan Kode View

Pada bagian berikut:

foreach($tbl_siswa as $d)

digunakan untuk melakukan perulangan seluruh data yang dikirimkan dari controller.

Sedangkan:

$d->nama

digunakan untuk menampilkan isi field nama dari tabel database.

Setiap record yang ditemukan akan ditampilkan menjadi satu baris pada tabel HTML.

Mengakses Halaman Data Siswa

Setelah semua kode selesai dibuat, jalankan aplikasi melalui browser:

http://localhost/ci/index.php/siswa

Jika seluruh konfigurasi benar, maka daftar nama siswa yang tersimpan di database akan muncul dalam bentuk tabel.

Semakin banyak data yang tersimpan di database, semakin banyak pula baris yang akan ditampilkan pada halaman tersebut.

Contoh Hasil Tampilan

+----+------------------+
| No | Nama             |
+----+------------------+
| 1  | Ahmad            |
| 2  | Budi             |
| 3  | Citra            |
+----+------------------+

Data di atas hanyalah contoh tampilan hasil query dari database.

Kesalahan yang Sering Terjadi

1. Model Tidak Ditemukan

Pastikan model telah dipanggil pada constructor controller:

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

2. View Tidak Ditemukan

Pastikan file lihat.php berada pada folder:

application/views/

3. Tabel Database Tidak Ada

Pastikan tabel tbl_siswa sudah dibuat dan berisi data.

4. Database Belum Terkoneksi

Periksa kembali file:

application/config/database.php

Pastikan hostname, username, password, dan nama database sudah benar.

Pengembangan Selanjutnya

Setelah berhasil menampilkan data dari database, Anda dapat mengembangkan aplikasi menjadi lebih lengkap dengan menambahkan fitur:

  • Pencarian data siswa.
  • Pagination.
  • Sorting data.
  • Edit data siswa.
  • Hapus data siswa.
  • Validasi form.
  • Bootstrap untuk mempercantik tampilan.
  • Integrasi DataTables.
  • Export PDF dan Excel.

Fitur-fitur tersebut merupakan bagian dari implementasi CRUD yang umum digunakan pada aplikasi web modern.

Kesimpulan

Menampilkan data dari database merupakan bagian penting dalam pengembangan aplikasi menggunakan CodeIgniter. Melalui konsep MVC, proses pengambilan data menjadi lebih terstruktur karena setiap komponen memiliki tugas masing-masing.

Controller bertugas menghubungkan proses, Model bertugas berkomunikasi dengan database, sedangkan View bertanggung jawab menampilkan data kepada pengguna.

Dengan memahami tutorial CRUD Read Data CodeIgniter ini, Anda telah selangkah lebih dekat untuk membangun aplikasi CRUD lengkap yang mencakup Create, Read, Update, dan Delete menggunakan framework CodeIgniter.