BERKENALAN DENGAN MODEL CODEIGNITER Muhamad Yusuf muhamadyusuf0012@gmail.com :: https://muhamadyusufppn.blogspot.co.id Abstrak Framework CodeIgniter memiliki konsep MVC(Model, View, Controller) yang merupakan dasar untuk memahami framework di PHP. Model biasanya berhubungan langsung dengan database untuk memanipulasi data (insert, update, delete, search), menangani validasi dari bagian controller, namun tidak dapat berhubungan langsung dengan bagian view. Secara singkat Model digunakan untuk melakukan data processing, dimana data yang diterima melalui view akan masuk pada controller dan selanjutnya oleh controller akan dikirimkan pada model untuk diproses. Setelah model selesai melakukan pemrosesan, hasil pemrosesan akan dikirimkan kembali pada controller dan selanjutnya akan ditampilkan kembali kepada user melalui view. Kata Kunci: CodeIgniter, Model, MVC Pendahuluan Adapun tujuan dibuatnya artikel ini agar pembaca memahami konsep MVC(Model, View, Controller) serta dapat menggunakan model sebagai penghubung dengan database, dan juga kita menggunakan library database untuk mengkoneksikan aplikasi yang dibuat dengan sebuah database. Dalam artikel ini kita akan mencoba membuat model CodeIgniter dan menghubungkan aplikasi CodeIgniter dengan database MySQL. Diharapkan pembaca dapat memanfaatkan dan memahami artikel ini dengan sebaikbaiknya.
Pembahasan Dalam artikel sebelumnya Cara Menghubungkan Framework CodeIgniter dengan Database MySQL kita telah mempraktikan konfigurasi pada file database.php Codeigniter(CI) apa saja yang harus diubah agar dapat terhubung dengan database MySQL. Seperti tulisan penutup diartikel sebelumnya disini kita akan berkenalan dengan model pada CI. Sebelum masuk ke model lebih baiknya kita mengetahui tentang bagaimana sistem kerja pada Framework CI. Framework CI memiliki konsep MVC. Apa itu MVC? MVC kependekan dari Model, View, Controller yang merupakan dasar untuk memahami framework di PHP. Model View Controller merupakan suatu konsep yang cukup populer dalam pembangunan aplikasi web, berawal pada bahasa pemrograman Small Talk, MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data, user interface, dan bagian yang menjadi kontrol aplikasi. Terdapat 3 jenis komponen yang membangun suatu MVC pattern dalam suatu aplikasi yaitu : View, merupakan bagian yang menangani presentation logic. Pada suatu aplikasi web bagian ini biasanya berupa file template HTML, yang diatur oleh controller. View berfungsi untuk menerima dan merepresentasikan data kepada user. Bagian ini tidak memiliki akses langsung terhadap bagian model. Model, biasanya berhubungan langsung dengan database untuk memanipulasi data (insert, update, delete, search), menangani validasi dari bagian controller, namun tidak dapat berhubungan langsung dengan bagian view.
Controller, merupakan bagian yang mengatur hubungan antara bagian model dan bagian view, controller berfungsi untuk menerima request dan data dari user kemudian menentukan apa yang akan diproses oleh aplikasi. Singkat kata Model untuk mengatur alur database, View untuk menampilkan web, sedangkan Controller untuk mengatur alur kerja antara Model dan View. Jadi misalnya kita ingin membuat akun facebook atau e-mail. Pertama Anda akan melihat tampilan signup/ register itulah View, kemudian kita menuliskan form pengisian seperti username, password, dll dan Anda klik sign-up/ register maka di sini View memanggil Controller dan Controller memanggil Model, sedangkan Model mengecek apakah Anda sudah sesuai dengan kriteria pendaftaran seperti sudah mengisi username, password dan lain sebagainya. Kemudian Model menggembalikan(callback) ke Controller dan Controller mengembalikan ke View, dan kita akan melihat berhasil atau tidak kita sign-up/ register. Lebih jelas berikut:
Sudah jelaskan bagaimana konsep pada MVC, selanjutnya kita akan mencoba menggunakan model untuk menampilkan data dari database MySQL. Tahap 1: Disini kita membuat model dengan nama m_siswa.php. application/models/m_siswa.php Perhatikan syntax di atas. saat membuat class model m_siswa penulisannya di anjurkan harus di awali dengan huruf besar. kemudian meng-extend model m_siswa yang sudah di buat dengan CI_Model. kemudian kita membuat sebuah function select() pada model m_siswa ini. function select() ini saya buat untuk mengambil data pada tabel siswa. syntax $this->db->get() di gunakan untuk mengambil data dari database. dan nama tabel yang ingin di ambil datanya letakkan dalam parameternya sehingga menjadi
Tahap 2: Langkah selanjutnya buat sebuah function pada controller. Disini kita membuat function data_siswa() pada contoller siswa.php. perhatikan pada function siswa di atas. syntax: Berfungsi untuk memanggil function select() pada model m_siswa, dan fungsi result() berguna untuk menjadikannya array. data yang di ambil dari fungsi select pada model m_siswa kita masukkan kedalam variabel untuk di parsing ke dalam view v_siswa.php. Untuk memparsing data kedalam view CI.
Tahap 3: Buat sebuah view dengan nama v_siswa.php. pada view ini kita akan menampilkan data dari database yang kita parsing. application/view/v_siswa.php perhatikan pada syntax di atas kita menampilkan data dengan menggunakan foreach(). variabel $siswa akan menjadi $row. $siswa adalah variabel yang di parsing dari controller tadi dan berisi data siswa dalam bentuk array, Langkah 4: Kemudian input data pada tabel siswa
Langkah 5: Kemudian akses alamat controller siswa untuk melihat hasilnya. http://localhost/sekolah/index.php/siswa/data_siswa Langkah 6: Dan akhirnya kita sudah berhasil menggunakan model pada CI. Untuk artikel selanjutnya kita akan mempratikan mengenai CRUD (Create, Read, Update dan Delete) tapi karena CRUD sudah ada artikelnya di pepen_aandriansyah crud_dengan_codeigniter. Maka kita akan membahas bagaimana cara menghapus index.php menggunakan htaccess pada codeigniter. Penutup Sekian tutorial pengenalan model pada Framework CodeIgniter. Jika pada praktiknya terdapat error silahkan kontak email saya. semoga bermanfaat serta dapat membantu pembaca mendapatkan ilmu baru dan membuat minat pembaca untuk langsung mempraktikkan apa yang sudah saya jelaskan ini.
Referensi http://media-kreatif.com/home/post/57/cara-membuat-model-view-dan-controller-padacodeigniter.prm http://www.malasngoding.com/menghubungkan-codeigniter-dengan-database-mysql/ https://codeigniter.com/ https://situsali.com/konsep-dasar-mvc-model-view-controller-dariphp/https://id.wikipedia.org/wiki/codeigniter Biografi Nama saya Muhamad Yusuf lahir di Bandung 12 Desember 1995, sedang menyelesaikan kuliah disalah satu perguruan tinggi. Saya sedikit menguasai Hyper Text Markup Language(HTML), bahasa pemrograman Hypertext Prepocessor(PHP), Structured Query Language(SQL), Cascading Style Sheet(CSS), framework CodeIgniter(CI) dan JavaScript. Semoga artikel-artikel yang saya buat bermanfaat bagi pembaca semua. Terimakasih. Email : muhamadyusuf0012@gmail.com Instagram : yusuv_m Blog : https://muhamadyusufppn.blogspot.co.id