Controller CodeIgniter
Kita harus menggunakan projek yang lama pada tutorial-tutorial sebelumnya untuk kita lanjutkan. Tutorial kali ini mengenai controller CI yang merupakan kelanjutan dari
tutorial-tutorial sebelumnya.
Dengan fungsi site_url('mahasiswa/tambah'); kita dapat langsung memanggil
controller dan method yang hasilnya.
Selamat kita sudah berhasil membuat CRUD. Hasilnya dapat di download di sini. Terima Kasih 😅
- Pengenalan CodeIgniter
- Konfigurasi CodeIgniter
- Model CodeIgniter
- View CodeIgniter
CodeIgniter menggunakan metode MVC (Model, View, Controller) agar kode yang
dibuat tidak campur aduk dan mudah dibaca ulang dan terhindar dari
kesalahan. Controller dapat dilihat dari link sebuah website.
localhost/belajarcodeigniter/mahasiswa/edit/123
[1] mahasiswa=>Controller
[2] edit=>method/fungsi
[3] 123=>parameter
Catatan: tidak semua controller menggunakan parameter
Contoller pada url di atas adalah mahasiswa sedangkan edit adalah method dan 123 adalah parameter. Untuk parameter tidak sering digunakan.
Didalam tutorial CRUD dengan native PHP sebelumnya kita masih ingat bagaimana
mengontrol halaman yang tampil ketika menu diklik.
url?halaman=home
Ini merupakan satu bentuk pengontrolan yang dibuat dengan native PHP yang
sekarang akan kita gantikan dengan controller di CI.
Didalam native PHP isi form dikirimkan ke file tujuan. Pada tutorial yang
pernah saya tulis biasanya file tujuan pengiriman form namanya ditandai kata
aksi_xxx.php. Nah pada CI kita lupakan itu
karena aksi tersebut ditangani oleh fungsi controller, misalkan.
localhost/belajarcodeigniter/mahasiswa/aksi_tambah
Sekedar bercerita, saya sering belajar hal baru dengan menyama-nyamakan
pelajaran lama. Begitu juga jika kita ingin belajar bahasa pemrograman lain,
kita bisa menyama-nyamakan agar mudah mengingat dan mudah mencari kata kunci
referensi di google.
Pada tutorial sebelumnya sebenarnya kita sudah menggunakan controller namun
belum saya jelaskan sedikit lebih dalam.
Kita mulai belajar controller dari tombol tambah lalu edit dan hapus.
localhost/belajarcodeigniter/mahasiswa/tambah
Selanjutnya ubah controller mahasiswa dan tambahkan method-method yang lain.
- belajarcodeigniter
- application
- controller
- Mahasiswa.php (edit)
Perhatikan dengan baik bagaimana controller berkerja.
View | Controller |
Membuat link site_url('mahasiswa/edit/123') [1] mahasiswa=>Controller [2] edit=>method/fungsi [3] 123=>parameter | Membuat Method atau fungsi Class Mahasiswa extends CI_Controller { //[1]nama kelas adalah controller public function edit($id){ //[2]nama fungsi adalah method //[3]$id adalah parameter .... } } |
Ada 6 method pada controller mahasiswa di atas.
- index
untuk menampilkan data kedalam tabel yang berasal dari model. - tambah
untuk menyiapkan dan menampilkan form tambah data. - aksi_tambah
untuk menerima nilai tambah data dan diteruskan ke model. - edit
untuk menyiapkan dan menampilkan form edit data. - aksi_edit
untuk menerima nilai edit data dan diteruskan ke model. - hapus
untuk menerima link dari tombol hapus dan diteruskan ke model.
Sekarang kita buat sebuah view untuk form mahasiswa. Ada
beberapa file yang akan kita buat di forlder _includes.
- belajarcodeigniter
- application
- view
- _includes
- head_form.php
- js_form.php
- dll (sudah)
- mahasiswa_list.php (sudah)
- mahasiswa_form.php
#head_form.php
Pada file ini css menyesuaikan untuk keperluan form.
#js_form.php
Pada file ini js menyesuaikan untuk keperluan form.
#mahasiswa_form.php
File ini digunakan untuk menampilkan view form. Pada view ini yang berbeda pada _include adalah head_form.php dan js_form.php yang lain sama.