Bab 3 PENGENALAN CODEIGNITER
Untuk dapat menggunakan CodeIgniter, tentu kita harus mempelajari dahulu bagaimana membuat sebuah aplikasi berbasis website menggunakan
CodeIgniter. Karena bekerja dengan sebuah framework tentu tidak sama dengan bekerja dengan membuat kode secara manual dari nol. Menggunakan
framework berarti kita harus mau mempelajari bagaimana melakukan pengembangan website di lingkungan framework tersebut. Selain itu lingkungan pengembangan satu framework dengan yang lain juga berbeda, meskipun kita sudah biasa menggunakan symphoni, misalnya, jika ingin menggunakan CodeIgniter kita tetap saja harus mempelajari lingkungan pengembangan di CodeIgniter.
CodeIgniter juga memiliki banyak fitur-fitur yang harus dipelajari terlebih dahulu agar bisa memanfaatkannya untuk keperluan pengembangan website. Bab ini akan membahas cara-cara membuat halaman website serderhana dengan CodeIgniter menggunakan MVC serta pengenalan bagian-bagian dari
CodeIgniter seperti library, helpers dan plugin serta beberapa fitur dari
CodeIgniter.
Seperti yang sudah disebutkan di muka bahwa CodeIgniter menggunakan lingkungan pengembangan dengan MVC (Model View Controller), sehingga kita harus menggunakan MVC dalam pembuatan website kita.
3.1 Hello World
Dalam CodeIgniter, controller adalah sebuah class yang diberi nama dengan sama dengan nama filenya dan berhubungan dengan alamat URI dari website.
Misalnya saja kita membuat sebuah controller dengan nama test, maka controller test tersebut bisa kita panggil dengan alamat :
http://www.nama-website.com/index.php/test/ Karena nama controller harus sama dengan nama file controller yang dibuat
sehingga pada alamat diatas CodeIgniter akan mencari file dengan nama
test.php didalam direktori controller dan jika ditemukan controller tersebut akan dijalankan.
Nama class didalam controller juga harus sama dengan nama filenya. Bedanya nama class harus dimulai dengan huruf besar. Sehingga jika kita memiliki
sebuah controller dengan nama test maka nama class-nya adalah Test. Jika namanya tidak sesuai maka CodeIgniter tidak akan dapat menjalankan controller yang dimaksud.
Sesuai dengan kebiasaan belajar pemrograman maka kita akan coba memulai dengan menampilkan tulisan “Hello World” menggunakan CodeIgniter, perlu diingat base URL yang kita gunakan adalah sama dengan yang digunakan
dalam instalasi yaitu
http://localhost/ci/.
Pertama kita buat file untuk controller, misalnya saja kita beri nama coba, oleh karena itu maka nama class-nya adalah class Coba.
<?php
class Coba extends Controller {
function index() {
echo "Helo World";
}
}
?>
Simpan kedalam direktori controller kemudian buka alamat
http://localhost/ci/index.php/coba/ di web browser.
Gambar : Helo World
class Coba extends Controller {
Kode diatas berarti kita membuat sebuah class dengan nama Coba yang merupakan sebuah controller. Fungsi index() adalah fungsi yang secara default akan dijalankan saat sebuah controller dijalankan. Kita bsia menambahkan
fungsi-fungsi lain jika diperlukan kedalam controller berapapun banyaknya.
Contoh diatas belum memperlihatkan bagaimana menggunakan MVC karena
kita baru menggunakan controller saja. Berikut kode untuk menampilkan “Hello
World” tetapi sudah menggunakan view.
Sedikit lakukan perubahan pada file coba.php sebelumnya sehingga menjadi seperti berikut :
<?php
class Coba extends Controller {
function index() {
$data['teks'] = "Helo World";
$this->load->view('tampil',$data);
}
}
?>
Jika kita kembali membuka alamat
http://localhost/ci/ maka akan keluar error :
Gambar : Error karena view belum ada.
Error tersebut muncul karena fungsi index() kita rubah menjadi seperti berikut :
$data['teks'] = "Helo World";
$this->load->view('tampil',$data);
Maksudnya string “Hello World” disimpan kedalam array $data[“teks”] kemudian kita untuk menampilkannya kita memanggil sebuah view dengan nama tampil. Karena itu agar tulisan “Helo World” dapat ditampilkan, terlebih dahulu kita buat sebuah file dengan nama tampil.php didalam direktori views dengan isi sebagai berikut :
<html>
<head>
<title>Contoh Penggunaan Views</title>
</head>
<body>
<?= $teks; ?>
</body>
</html>
Didalam view inilah isi dari array $data[“teks”] ditampilkan dalam baris :
<?= $teks; ?>
Gambar : Contoh penggunaan view
Seperti halnya halaman website biasa, sebuah view tentu saja akan dibuat menggunakan HTML, kemudian tampilannya bisa dipercantik dengan memanfaatkan CSS dan JavaScript.
Karena models diperuntukan untuk berhubungan dengan struktur data website yang nantinya akan disimpan didalam basis data maka untuk dapat
menggunakan models kita harus terlebih dahulu melakukan konfigurasi dan membuat basis data yang akan dibahas pada bab selanjutnya.
Namun secara sederhananya dengan menggunakan models, maka models akan berisi fungsi-fungsi yang berisi akses ke basis data entah melihat data,
melakukan update, menghapus atau yang lain. Kemudian models akan mengembalikan nilai yang akan diterima dan diproses oleh controller untuk selanjutnya ditampilkan di dalam views.
Sebagai contoh sederhana kita akan mengembalikan sebuah nilai variabel dengan models, kemudian nilai tersebut diterima oleh controller dan kemudian controller akan memanggil views untuk menampilkan hasilnya.
Untuk membuat models sama seperti halnya membuat controller, nama class dalam model harus sama dengan nama filenya tetapi dengan huruf pertama
adalah huruf besar. Contohnya kita akan membuat sebuah models dengan nama model_coba, sehingga nama class-nya adalah Model_coba dan nama file-nya adalah model_coba.php.
Buat sebuah file dengan nama model_coba.php dan simpan kedalam direktori models dengan isi sebagai berikut :
<?php
Class Model_coba extends Model {
function helo() {
$teks = "Helo World";
return $teks;
}
}
?>
Kemudian lakukan perubahan pada file coba.php didalam direktori controller sehingga menjadi sebagai berikut :
<?php
class Coba extends Controller {
function index() {
$this->load->model('Model_coba','',TRUE);
$data['teks'] = $this->Model_coba->helo();
$this->load->view('tampil',$data);
}
}
?>
Models yang sudah kita buat dipanggil oleh controller coba dengan $this->load-
>model('Model_coba','',TRUE);. Kemudian kita jalankan fungsi helo() didalam Model_coba dengan $data['teks'] = $this->Model_coba->helo();. Setelah itu panggil views dengan $this->load->view('tampil',$data);.
Untuk views yang digunakan tetap sama seperti sebelumnya :
<html>
<head>
<title>Contoh Penggunaan Views</title>
<head>
<body>
<?= $teks; ?>
</body>
</html>
Kemudian buka alamat
http://localhost/ci/.
Gambar : Hasil dari penggunaan models Model_coba
Bisa dilihat meskipun hasilnya sama saja, tetapi sebenarnya ada perbedaan besar daripada yang sebelumnya yaitu dengan ditambahkannya penggunaan models. Jika saat menjalankan yang anda dapati adalah error seperti berikut :
Gambar : Error saat menjankan controller
Error tersebut menandakan bahwa untuk dapat menggunakan model maka kita harus sudah terkoneksi ke server basis data, bergubung kita belum melakukan konfigurasi untuk basis data yang akan digunakan maka terjadilah error. Jika
tetap ingin menjalankan controller coba yang tadi kita buat maka terlebih dahulu lakukan konfigurasi basis data seperti pada bab sebelumnya.