CodeIgniter By ISNARDI, M.Kom
Framework Adalah sebuah konsep mendasar untuk menyelesaikan sebuah permasalahan yang kompleks. Framework dibuat untuk meringankan pekerjaan. Dalam kaitannya dengan dunia pemrograman framework adalah sebuah kerangka kerja yang mempunyai tujuan untuk meringankan para programmer dalam membuat kode program. Biasanya terdiri dari support program, kode-kode library, dan software-software yang lain yang disatukan dalam satu kesatuan dan siap digunakan.
CodeIgniter adalah salah satu framework dari bahasa scripting PHP, yang dibuat untuk mempermudah para programmer PHP dalam bekerja. Apabila Anda sudah mengenal PHP lebih dahulu, maka CodeIgniter akan membantu lebih baik lagi dan lebih mudah dalam pengerjaan sebuah project PHP.
Apa Yang Bisa Dilakukan CodeIgniter Kepada Anda? Menghemat waktu pengerjaan CI tidak membutuhkan banyak waktu untuk mempelajarinya, dengan CI programmer dapat menghemat baris code pada waktu coding.
Dengan CI kita hanya menuliskan seperti ini : Link dapat di Update secara otomatis Apabila anda sedang mendesign sebuah menu yang terdiri dari beberapa hyperlink. Apabila menggunakan tag HTML tradisional adalah sebagai berikut : <a href=’http://www.blogku.com/index.php/detail/artikel’>Artikel</a> Dengan CI kita hanya menuliskan seperti ini : echo anchor(detail/artikel,Artikel); CI mengatur segala tentang link pada sebuah file konfigurasi, jadi apabila terjadi perubahan pada link kita tinggal merubah file konfigurasi dan semua link yang terdapat pada web aplikasi anda akan otomatis berubah.
Menghindari crash pada database Input data pada database adalah riskan akan error dan masalah. Karena beberapa batasan pada HTML dan database, input data dari HTML dapat mengandung beberapa karakter yang mana akan mengganggu atau mengacaukan proses input data pada database. Dengan menggunakan CI semua itu sudah ditangani dengan baik.
Membuat aplikasi lebih kompleks CI menyediakan banyak sekali library untuk melengkapi proses coding. Kadang kita temui kesulitan untuk mengintegrasikan sebuah library pada PHP tradisional dan bisa juga menimbulkan komplikasi pada code Anda, dengan CI kita dapat mengintegrasikan banyak library dengan mudah dah aman. Beberapa contoh library yang sering kita gunakan adalah email. Bagaimana mengirim email dengan menggunakan CI
CodeIgniter menerapkan MVC (Model View Controller) pattern, apabila kita perhatikan CI memisahkan ketiga unsur tersebut kedalam 3 folder yang berbeda, yaitu “Controller”, “Models” dan “Views”. MVC pattern adalah sebuah design pattern OOP, yang mana unsure-unsur pembentuknya diwujudkan dalam bentuk object. Object-object controller, model dan view akan diletakkan pada masing-masing folder sesuai dengan namanya.
MVC Pattern adalah salah satu bentuk dari sekian banyak bentuk design pattern lainnya. MVC atau Model, View dan Controller ini kebanyakan digunakan dalam pembangunan sebuah aplikasi web. Konsep dari MVC sendiri adalah memisahkan bagian antar muka dengan sisi bisnis aplikasi.
CodeIgniter dengan MVC Pattern CodeIgniter menggunakan MVC Pattern di dalamnya, apa sebenarnya MVC Pattern itu? Berbicara tentang MVC Pattern ada baiknya kalau kita berbicara tentang Design Pattern. Design Pattern adalah sebuah pola-pola yang digunakan untuk mengatasi sebuah problem atau masalaha yang ada pada merekayasa sebuah software (pembuatan software). Dengan menggunakan pendekatan Design Pattern ini diharapkan mempermudah programmer dalam mengerjakan suatu project software
Model, adalah sebuah object yang merepresentasikan data yang ada pada database. Layer model ini berada diatas database, sehingga model adalah gateway aplikasi apabila ingin melakukan pemrosesan data pada database. View, mempunyai tugas untuk mencetak hasil pemrosesan data dan menunjukkan kepada user. Dalam aplikasi web HTML tag adalah hasil dari proses generasi dari View, yang mana akan ditampilkan pada browser user. Controller, adalah sebuah object yang menjembatani antara View dan Model object. Controller bertanggung jawab untuk melakukan konsultasi tentang data kepada Model dan memberikan data dinamis ke View. Sehingga dengan pattern ini dapat diwujudkan sebuah web aplikasi yang dinamis.
MVC adalah pattern yang memisahkan sisi antarmuka dengan sisi bisnis aplikasi. Ada beberapa hal yang perlu diperhatikan saat kita memulai mengerjakan sebuah project dengan menggunakan CodeIgniter. Sebelum kita melangkah lebih lanjut bersama CodeIgniter maka alangkah baiknya kalau download source CodeIgniter di website resminya terlebih dahulu www.codeigniter.com
Struktur Folder CI Setelah download selesai, ekstrak CI pada folder “/wamp\www\project_ku”. Struktur folder CI terdiri dari : /project_ku /system /application /cache /codeigniter /database /fonts /helpers /language /libraries /logs /plugins /scaffolding /user_guide
Dalam pengerjaan sebuah project yang perlu kita perhatikan hanyalah folder “application”. Struktur folder yang ada didalam folder “application” adalah sebagai berikut : /application /config /controllers /errors /helpers /hooks /language /libraries /models /views
Memulai Project Bersama CodeIgniter Kita akan memulai membuat sebuah project dengan CodeIgniter. Pada permulaan kali ini kita akan fokus pada Controller dan View, karena dua unsur ini adalah syarat minimal apabila kita bekerja dengan CodeIgniter. Kita akan membuat sebuah file controller dengan nama “hello.php”.
class Hello extends Controller { function Hello() parent::Controller; } function index() echo “Hello Jayanusa, Saya belajar CodeIgniter”;
Pada saat kita membuat controller Ada hal-hal yang perlu di perhatikan Nama class harus sama dengan nama file dengan huruf pertama besar (kapital), dan Menuruni class induknya (extends Controller). CodeIgniter adalah sebuah framework yang didesign agar dapat berjalan pada PHP versi 4.x dan versi 5.x. Oleh karena itu agar hal tersebut terakomodasi kita harus menambahkan sebuah function contructor (function Hello) yang didalamnya terdapat script parent::Controller; Function “index” dalam sebuah controller adalah fungsi default, maksudnya adalah apabila kita memanggil sebuah controller, maka index inilah yang akan dieksekusi untuk pertama kalinya.
Sebelum mencoba halaman pertama kita, mari kita set dulu file /config/routes.php, dalam file ini kita akan mendefinisikan controller default pada project kita. $route['default_controller'] = “hello”;
“hello” adalah controller yang baru saja kita buat, kita menjadikan “hello” sebagai controller default pada project pertama kita. Lalu mari kita coba memanggil url http://localhost/project_ku/index.php, maka yang akan muncul adalah : Hello Jayanusa, Saya belajar CodeIgniter
Dengan munculnya kalimat “Hello Jayanusa, Saya belajar CodeIgniter” menandakan bahwa kita berhasil membuat satu controller. Dan sekaligus membuktikan bahwa controller adalah tujuan pertama pada saat load page. Dari controller inilah kita dapat mengontrol semua alur web yang akan kita buat
Membuat View Bagaimana hubungan controller dengan View? Mari kita coba untuk membuat file view. Kita akan membuat file depan.php dan menyimpannya dalam folder view. View berisikan template tampilan suatu halaman. Biasanya didalamnya adalah tag-tag html dan css. View nantinya akan menampilkan data yang dikirimkan oleh controller.
depan.php <html> <head> <title> </title> </head> <h1></h1> <body> </body> </html>
Kita akan coba mengirimkan data ‘title’ dan ‘header’, yang mana ‘title’ adalah title page, dan header adalah kalimat “Hello Jayanusa ….”. Harapannya adalah data ‘title’ dan ‘header’ akan dapat tampil pada halaman depan. Kita akan membuat sebuah array data dengan isi title dan header. Array data ini nantinya akan kita kirimkan pada View. Berikut adalah contoh script dari controller kita.
class Hello extends Controller { function Hello() parent::Controller; } function index() $data[“title”] = “Halaman Pertama CI”; $data[“header”] = “Hello Jayanusa, Saya belajar CodeIgniter”; $this->load->view(“depan”,$data);
Perubahan yang terjadi adalah pada function index, kita membuat array $data[“title”] dan $data[“header”] dan masing-masing sudah kita isi dengan “Halaman Pertama CI” untuk title dan “Hello Jayanusa….” untuk header. Mari kita perhatikan script selanjutnya, $this->load->view(“depan”,$data);
Fungsi dari script ini adalah untuk memanggil view dan mengisikan data, “depan” adalah nama view (diambil dari nama file depan.php), dan $data adalah array yang akan kita kirimkan pada view. Dengan script diatas berarti kita telah memanggil view dengan nama “depan” dan mengirimkan array $data padanya
<html> <head> <title><. php = $title <html> <head> <title><?php = $title ?> </title> </head> <h1><?php = $header ?></h1> <body> </body> </html>
Untuk dapan menampilkan data yang dikirimkan oleh controller maka kita tinggal memanggil saja variable dengan nama sesuai dengan nama index array yang kita kirimkan dari controller. Array yang kita kirimkan $data[“title”] dan $data[“header”], maka dalam view untuk kita hanya perlu mencetak $title untuk memanggil $data[“title”] dan $header untuk $data[“header”]. Mari kita coba untuk memanggil halaman kita dari browser, http://localhost/project_ku/index.php maka hasilnya akan nampak “Hello Jayanusa, Saya belajar CodeIgniter” dengan tampilan besar, dan title pada browser akan tampil “Halaman Pertama CI”. ·
Kita sudah berhasil membuat Controller dan View, kurang satu elemen lagi yaitu Model, seperti yang kita ketahui Model adalah sebuah class yang merepresentasikan sebuah database. Model adalah layer yang harus kita lewati sebelum kita ke database (apabila kita menggunakan pendekatan MVC). Bagaimana dengan Model dan bagaimana hubungan Controller dan View dengan Model? Mari kita tunggu Materi selanjutnya….
NGERTI NGGAK NiiiiiiiiiiiiiiiiiHHHHHH