Framework Codeigniter adalah salah satu framework yang digunakan untuk membuat website dengan berbasiskan PHP. Framework ini menggunakan metode MVC dalam memanajemen bait program yang dibuat.
Dengan MVC (Model-View-Controller) maka anda dapat memisahkan bait program yang berupa pengelolaan data ke database, bait program yang mengatur tampilan, dan bait program yang mengontrol semua aktifitas yang ada di website. MVC dapat membuat bait program tampak rapi dan berkelompok, disamping hal tersebut membuat themplate dari bait program juga akan lebih mudah.
Framework Codeigniter terbaru dapat di download pada url https://codeigniter.com/download yang sampai saat ini sudah sampai versi 3.1.6. Silakan anda download sesuai versi yang anda inginkan. Pastikan anda sudah menyesuaikan system requirement yang dibutuhkan untuk versi CI yang anda download agar tidak ada masalah saat anda memanggilnya di server lokal maupun di live server (server hosting).
/
application
- cache
- config
- controller
- core
- helpers
- hooks
- language
- libtaries
- logs
- models
- third_party
- views
system
user_guide
Namun jangan kawatir tidak seluruh folder harus anda pelajari. Folder yang perlu anda perhatikan yaitu pada folder application yang meliputi beberapa folder yang bisa anda pelajari di awal dan mempelajari folder yang lain ketika ada kasus yang mengharuskan anda menggunakan folder tersebut. Saya akan merubah fokus folder yang perlu anda pelajari di awal yaitu sebagai berikut:
/
application
- config
- controller
- model
- views
Tujuan dari fokus folder yang saya maksud adalah untuk membuat anda tidak bingung dengan penggunaan dari folder yang ada di dalam codeigniter dan berfokus pada MVC saja.
folder config adalah folder yang digunakan untuk meletakkan file configurasi. Pada folder ini terdapat beberapa file dengan ekstensi php. Namun untuk fungsi standar kita hanya perlu fokus ke beberapa file berikut:
/
config
- autoload.php
- config.php
- database.php
- routes.php
1. Packages
2. Libraries
3. Drivers
4. Helper files
5. Custom config files
6. Language files
7. Models
$config['base_url']
$config['index_page']
$config['encryption_key']
- hostname
- username
- password
- database?
$route['default_controller'] = 'welcome';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
Folder model adalah folder yang berisikan file berekstensikan php, diamana file ini berisikan bait program yang digunakan untuk pengelolaan data ke database. Dengan bantuan controller yang merujuk ke model yang sesuai dan function yang sesuai maka sebuah proses yang berkaitan dengan database sudah bisa dibuat.
Folder views adalah sebuah folder yang digunakan untuk menampung bait program yang berisikan desain antarmuka website. Anda juga dapat membuat folder di dalam folder views untuk mempermudah pengelompokan desain antarmuka yang anda buat. Pembahasan lebih lanjut akan saya bahas dengan menggunakan contoh kasus.
Setelah memahami fungsi folder dan file yang sebelumnya telah dijelaskan maka selanjutnya dilanjutkan ke bagian cara instalasi dan penggunaannya. Sebelumnya ada beberapa hal yang perlu dipersiapkan antara lain
Intalasi codeigiter dapat dilakukan beberapa tahapan yaitu:
$root = "http://".$_SERVER['HTTP_HOST'];
$root .= str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']).'/';
$config['base_url'] = $root;
$config['index_page'] = '';
$config['encryption_key'] = 'ewnIQalwwwzFqPJ9QK6hCMqlaZ1UpNja';
dua kode di atas ($root) digunakan untuk mengatur agar base_url yang sesuai dengan direktori atau alamat standar, seperti contoh http://www.mahadisuta.com/ atau http://localhost/codeigniter/, jadi dengan kode tersebut anda tidak perlu merubah setingan base_url ketika melakukan upload ke live server (hosting).
Untuk configurasi index_page digunakan untuk mengatur index dari halaman utama, secara default diisikan dengan index.php. Jika anda mengisikan index_page dengan index.php maka ketika anda mengakses website akan url yang akan muncul http://www.domain.com/index.php. Sedangkan jika anda mengosongkan index_page maka url yang akan muncul saat mengakses website yaitu http://www.domain.com/ tanpa ada index.php di blakangnya.
konfigurasi berikutnya yaitu encription_key, konfigurasi ini digunakan utuk menyimpan kunci encription yang digunakan pada librari enkripsi yang disediakan codeigniter. Biasanya berisikan 32 bit karkater yang diacak dengan tujuan kunci menjadi lebih kuat.
$route['default_controller'] = 'HomeControl';
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class HomeControl extends CI_Controller
{
function index()
{
}
dengan bait program di atas maka anda telah membuat sebuah class dan function, namun belum ada yang bisa dilakukan dengan function yang telah dibuat.
<!DOCTYPE html>
<html>
<head>
<title>Belajar Codeigniter bersama Mahadisuta</title>
</head>
<body>
Ini tampilan yang diambil di folder views dengan menggunakan controller HomeControl
</body>
</html>
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class HomeControl extends CI_Controller
{
function index()
{
$this->load->view('home');
}
}
dengan kode tersebut maka halaman home.php sudah dapat diakses dan akan menampilkan sesuai dengan tampilan yang ada di home.php.
Baca juga: Membuat Templit HTML pada Framework Codeigniter