Di awal-awal masa sekolah dulu, seringkali saya berangkat ke sekolah dengan jalan kaki. Berangkat pagi-pagi sekali, karena jarak yang relatif cukup jauh. Menempuh waktu yang lumayan lama juga. Karena jika naik kendaraan umum, perlu dua kali naik untuk sampai ke sekolah saya. Itu pun jika ada yang mau lewat jalan menuju ke sekolah saya, jika tidak? Ya, mesti tiga kali naik. Hemat ongkos dengan jalan kaki? iya. Tapi, berbanding lurus dengan tenaga yang dikeluarkan.

Sehingga di saat belajar menjadi kurang efektif dalam menyerap ilmu. Seiring berjalan waktu, ada teman baik saya yang sering mengajak berangkat ke sekolah bareng-bareng naik motornya dia. Alhamdulillah, Efisien waktu, Efisien tenaga dan hemat ongkos juga.

Nah, jika dianalogikan, CodeIgniter itu seperti itu. Menghemat biaya pengeluaran, mengefisienkan waktu pengerjaan dan mengefisienkan proses pengerjaan. Terasa banget dulu sewaktu belum berkenalan dengan CodeIgniter itu sama kaya berangkat ke sekolah jalan kaki. Dan di postingan kali ini, kita akan membahas tentang tutorial dasar CodeIgniter untuk Pemula, sesuai dengan judulnya. Kita akan membahas tentang Pengenalan CodeIgniter. Selain itu kita akan membahas konsep MVC dalam CodeIgniter dan langkah-langkah dasar dalam menggunakan CodeIgniter. Ok, kawan-kawan, kita mulai!

Di salah satu mata kuliah, yaitu pemrograman web 2, secara singkat CodeIgniter ini masuk ke dalam pembahasan mata kuliah tersebut. Untuk mempelajari CodeIgniter ini relatif mudah (kalau menurut saya), hanya perlu menguasai dasar-dasar bahasa pemrograman PHP dan juga konsep OOP. Kenapa saya menyimpulkan seperti itu? Karena berdasar pengamatan saya, dari 2 kelas di program studi teknik Informatika ini, yang belum menguasai pemrograman web I dan juga konsep OOP, yang tidak lain membahas dasar-dasar PHP, banyak mahasiswa yang kesulitan dalam mempelajari CodeIgniter.

Jadi, Apa itu CodeIgniter?

Berdasarkan apa yang saya baca di berbagai sumber (bonus dari dosen favorit), CodeIgniter adalah sebuah framework PHP yang digunakan untuk mengembangkan aplikasi web. Berdasarkan situs resminya, CodeIgniter merupakan framework ringan yang menyediakan set library dan tools untuk membangun aplikasi web yang dinamis dan kaya fitur dengan cepat dan mudah. Framework ini menawarkan beragam fitur, termasuk antarmuka yang mudah digunakan, struktur logis untuk mengelola kode, dan dokumentasi yang sangat baik. CodeIgniter dikenal dengan kemudahan penggunaannya, kecepatannya, dan fleksibilitasnya, sehingga menjadi pilihan populer bagi para developer yang membangun aplikasi web dengan PHP. Ini dapat digunakan untuk beragam proyek, mulai dari situs web pribadi kecil hingga aplikasi yang kompleks dan besar.

Apa itu framework?

Kalau kamu bertanya, apa itu framework? Secara sederhana, framework ini dapat didefinisikan sebagai kumpulan dari fungsi-fungsi atau prosedur-prosedur dan class – class untuk tujuan tertentu yang sudah siap digunakan sehingga bisa lebih mempermudah dan mempercepat pekerjaan seorang programer, tanpa harus membuat fungsi atau class dari awal.

Berdasarkan pengalaman saya (yang masih dangkal), CodeIgniter ini memudahkan dalam pembuatan aplikasi dengan cepat, tepat dan efisien... sama kaya berangkat ke sekolah bareng teman baik saya, ngga pakai jalan kaki. Hihi.

CodeIgniter dirilis pertama kali pada 28 Februari 2006. Dan versi yang saya gunakan adalah versi 3.1.0. Untuk mengunduh CodeIgniter, kawan-kawan dapat mengunduhnya langsung dari websitenya.

CodeIgniter dibangun dengan dasar pola MVC (Model View Controller), di mana view dan controller adalah bagian yang harus ada dalam proses pengembangan aplikasi berbasis web, sedangkan models adalah pilihan (tidak wajib).

Apa itu MVC?

Konsep MVC adalah memisahkan fungsi logika aplikasi dengan tampilan (view), sehingga kode PHP akan lebih singkat karena tampilan dipisahkan dengan kode (logika) PHP-nya. Berikut ini penjelasan dari MVC.

  • Model, merupakan representasi struktur data. Biasanya class-class yang ada dalam model berisi fungsi yang berinteraksi dengan database, misalnya untuk menampilkan (retrieve), memasukkan data (insert), memperbarui dan menghapus data dalam database.

  • View, adalah informasi yang ditampilkan kepada user/pengunjung website. View biasanya adalah berupa halaman web, tetapi dalam CodeIgniter view juga merepresentasikan potongan-potongan dari halaman web, misalnya header atau footer. Bisa juga berupa halaman RSS atau halaman web biasa.

  • Controller, menjadi jembatan / perantara antara model dan view serta bagian-bagian lain dari fungsi web yang ada di CI dan akhirnya menghasilkan tampilan halaman web.

Konsep MVC ini dirasa cukup mempermudahkan programmer karena masing-masing fungsi dipisahkan, sehingga bisa fokus pada logika pemrograman atau fokus pada tampilan lebih dahulu.

Lalu apa saja kelebihan CodeIgniter? Ada banyak lho! Nah beberapa kelebihan framework ini diantaranya adalah:

  1. CodeIgniter itu gratis dan menggunakan lisensi MIT, jadi bisa kamu gunakan sesuka hati.
  2. Menggunakan pendekatan MVC dalam pengembangannya.
  3. Ringan digunakan dan mudah dipelajari, sehingga cocok untuk pemula.
  4. Search engine friendly dan clean URLs
  5. Didukung untuk database yang paling utama termasuk MySQL (4.1+), MySQLi, MS SQL, Postgres, Oracle, SQLite, dan ODBC.
  6. CodeIgniter tidak memerlukan Template Engine
  7. Memiliki dokumentasi yang lengkap dan mudah diakses.
  8. Banyak libraries dan helpers untuk membantu kamu dengan operasi kompleks seperti email, manipulasi gambar,membentuk validasi, upload file, sesi, aplikasi multibahasa dan menciptakan apis untuk aplikasi kamu.
  9. Kebanyakan libraries hanya dimuat bila diperlukan, sehingga dapat mengurangi penggunaan sumber daya.

Nah, setelah berkenalan dengan CodeIgniter, sekarang kita akan membahas langkah-langkah dasar yang harus diambil dalam menggunakan CodeIgniter. Apa saja itu? Check this out, ya!

Step 1 - Persiapan

Seperti halnya coding menggunakan PHP native, ada beberapa hal yang mesti kita persiapkan terlebih dahulu saat kita akan menggunakan framework CodeIgniter 3. Dan di bawah ini adalah minimum spesifikasi yang saya gunakan:

  • XAMPP versi 5.5.35 (Apache & PHP 5.5.35).
  • MySQL / MariaDB (optional).

Pastikan juga kalau XAMPP sudah di-start sebelum kita mulai. Dan sebagai pengingat, kalau pakai XAMPP, sudah pasti webroot-nya itu ada di direktori C:\xampp\htdocs\. Nah, nanti kita simpan folder codeigniter kita di folder htdocs, yang akan dibahas di langkah selanjutnya.

Step 2- Installasi framework CodeIgniter 3

Kamu bisa download CodeIgniter 3 di web official CodeIgniter. Klik link 'Download' untuk download CodeIgniter versi terbaru.

Web Official Codeigniter

Note: Per tanggal 22 Desember 2022, di halaman download terdapat dua versi codeigniter, yaitu codeigniter 4 dan codeigniter 3. Di sini kita akan coba download codeigniter 3.

Kalau sudah kamu download, extract zip file (CodeIgniter-3.1.0.zip) dan rename folder. Misalnya CodeIgniter-3.1.0 di-rename menjadi latihan_ci. Setelah itu pindahkan folder latihan_ci ke direktori webroot. Iya, kamu benar.. pindahkan ke C:\xampp\htdocs\.

Web Official Codeigniter

Sekarang, yuk kita coba buka isi folder latihan_ci! Ada apa saja sih yang ada di folder latihan_ci? Bisa kita lihat ada tiga folder utama yang ada di dalam, yaitu folder application, system dan juga user guide. Nah, di antara ketiga folder tersebut, kita akan sering berinteraksi dengan folder application. Dan sesuai dengan konsep MVC, kita bisa menemukan folder Models, Controllers dan Views, yang digunakan untuk menyimpan file-file yang dibuat sesuai dengan namanya. Misalnya, file controllers sudah pasti akan kita simpan di folder controllers, begitu pula yang lainnya.

MVC

Step 3 - Uji Hasil Intallasi

Untuk menguji hasil intallasi, sekarang kamu buka browser kesayanganmu. Lalu, kita buka alamat http://localhost/[nama folder ci]/. Karena nama folder CI kita itu latihan_ci, jadi kita buka alamat URL http://localhost/latihan_ci/. Voila~ , muncul tampilan seperti gambar di bawah ini.

Uji coba hasil installasi

Ya, jika muncul tampilan seperti gambar di atas itu artinya kamu sudah berhasil menginstall framework CodeIgniter.

Step 4 - Atur Konfigurasi Base URL

Maksud Base URL di dalam project yang kita bangun itu adalah alamat website (misalnya, kalau blog ini dibangun menggunakan CodeIgniter..maka, base urlnya jadi https://recodeku.blogspot.com). Nah, karena project kita masih ada di localhost, maka BASE URL-nya kita atur menjadi http://localhost/[nama folder CI]/. Dan untuk mengatur Base URL, coba kamu buka file application/config/config.php menggunakan text editor kesayanganmu.

Cek line ke 26, ubah:

$config['base_url'] = '';

menjadi:

$config['base_url'] = 'http://localhost/latihan_ci';

Setelah itu, save kembali file config.php.

Step 5 - Mengenal View dan Controller pada CodeIgniter

Di step sebelumnya (Uji Hasil Intallasi), bisa kita lihat di browser ada tulisan seperti di bawah ini:

The page you are looking at is being generated dynamically by CodeIgniter. If you would like to edit this page you'll find it located at: application/views/welcome_message.php

Itu artinya, file dari tampilan page ini ada di dalam folder views dengan nama welcome_message.php.

views

Selain itu, kita juga bisa melihat tulisan ini di browser.

The corresponding controller for this page is found at: application/controllers/Welcome.php

Itu artinya, untuk menampilkan tampilan ini harus memanggil controller yang ada di folder controllers di dalam file welcome.php.

Controller

Bingung ‘kan? Apa maksudnya? :D

Sama saya juga bingung di awal-awal pakai CI. :D

Tapi tenang, semakin sering mencoba, semakin cepat kamu paham. Learning by doing.

Oke lanjut...

Sekarang coba buka file welcome.php di text editor kesayanganmu. Di sini saya pakai Notepad++. Berikut ini tampilan dari file welcome.php :

file Welcome.php

Nah Welcome yang saya tandai itu adalah nama class controller, sedangkan index itu adalah nama method. Di dalam method index terdapat kode program di bawah ini:

      public function index()  
      {  
           $this->load->view('welcome_message');  
      }  

Method ini digunakan untuk menampilkan welcome_message.php yang ada di folder views. Supaya lebih jelas kita coba menampilkan welcome_message.php yang ada di folder views. (masih ingat cara untuk menampilkan file php di browser ‘kan?) dengan langsung mengetik lokasi file tersebut, karena file ini di htdocs/latihan_ci/application/views/welcome_message.php maka kita tulis di browser kita :

localhost/latihan_ci/application/views/welcome_message.php

Di browser akan muncul error seperti di bawah ini:

Access Forbidden!

Muncul error ini dikarenakan di dalam CI, untuk menampilkan file itu harus melalui controller, sesuai dengan konsep MVC. nah jika dilihat dari method yang ada pada file welcome.php di folder controllers, yaitu methodpublic function index(), terdapat kode program $this->load->view('welcome_message'). Maksudnya adalah:

  • $this di sini merujuk pada nama controller yaitu Welcome.
  • sedangkan load untuk meload.
  • method view(‘welcome_message’) untuk menampilkan file welcome_message.php yang ada di folder views.

Jadi, method dari public function index() ini adalah untuk menampilkan file welcome_message.php yang ada di folder views.

Untuk menampilkan halaman web, di dalam CI ini menggunakan pola:

localhost/[nama_folder_ci]/index.php/[nama_class_controller]/[nama_method]  

Sekarang ketik di browser :

localhost/latihan_ci]/index.php/welcome/index  

Tampilan CodeIgniter

Di contoh diatas, ‘welcome’ di url index.php/welcome/ ini artinya CodeIgniter akan mencari controller dengan nama welcome.php di folder controller, lalu meload file tersebut. Dan karena setelah welcome terdapat method index /welcome/index, CodeIgniter akan menjalankan perintah yang terdapat dalam method tersebut, yaitu:

      public function index()  
      {  
           $this->load->view('welcome_message');  
      }  

yang berfungsi untuk menampilkan file welcome_message.php di folder views.

. . .

Penutup

Postingan ini menjabarkan tentang dasar framework CodeIgniter. Semoga dapat memudahkanmu memahami apa itu CodeIgniter dan Konsep MVC di dalamnya. Kita akan membahas CodeIgniter lebih mendalam di postingan berikutnya.

Apabila ada pertanyaan, kritik, saran, request atau ingin berkontribusi bisa disampaikan melalui kolom komentar.

Terima kasih sudah membaca postingan saya sampai akhir. Sampai berjumpa lagi di edisi tutorial berikutnya. Happy coding!

. . .

Referensi:

Gun Gun Priatna
Software Engineer, Content Writer and Founder qadrlabs.com
Komentar

blog comments powered by Disqus