Articles by "Codeigniter"

Tampilkan postingan dengan label Codeigniter. Tampilkan semua postingan

Model View Controller (MVC) pada CodeIgniter - Seperti sudah saya sampaikan pada posting sebelumnya (Mengenal PHP Framework: CodeIgniter) bahwa CodeIgniter menerapkan lingkungan pengembangan dengan metode MVC (Model View Controller). MVC memisahkan antara logika pembuatan kode dengan pembuatan template atau tampilan website. Penggunaan MVC membuat pembuatan sebuah proyek website menjadi lebih terstruktur dan lebih sederhana.



Secara sederhana konsep MVC terdiri dari tiga bagian yaitu bagian Model, bagian View dan bagian Controller. Didalam website dinamis setidaknya terdiri dari 3 hal yang paling pokok, yaitu basis data, logika aplikasi dan cara menampilkan halaman wesite. Tiga hal tersebut direpresentasikan dengan MVC yaitu model untuk basis data, view untuk cara menampilkan halaman website dan controller untuk logika aplikasi.


Model
Merepresantiskan struktur data dari website yang bisa berupa basis data maupun data lain, misalnya dalam bentuk file teks atau file xml. Biasanya didalam model akan berisi class dan fungsi untuk mengambil, melakukan update dan menghapus data website. Karena sebuah website biasanya memnggunakan basis data dalam menyimpan data maka bagian Model biasanya akan berhubungan dengan perintah-perintah query SQL.
Model bisa dibilang khusus digunakan untuk melakukan koneksi ke basis data oleh karena itu logika-logika pemrograman yang berada didalam model juga harus yang berhubungan dengan basis data. Misalnya saja
pemilihan kondisi tetapi untuk memilih melakukan query yang mana.

View
Merupakan informasi yang ditampilkan kepada pengunjung website. Sebisa mungkin didalam View tidak berisi logika-logika kode tetapi hanya berisi variabel-variabel yang berisi data yang siap ditampilkan. View bisa dibilang adalah halaman website yang dibuat menggunakan HTML dengan bantuan CSS atau JavaScript.
Di dalam view jangan pernah ada kode untuk melakukan koneksi ke basis data. View hanya dikhususkan untuk menampilkan data-data hasil dari model dan controller.

Controller
Controller merupakan penghubung antara Model dan View. Didalam Controller inilah terdapat class dan fungsi-fungsi yang memproses permintaan dari View kedalam struktur data didalam Model.
Controller juga tidak boleh berisi kode untuk mengakses basis data. Tugas controller adalah menyediakan berbagai variabel yang akan ditampilkan di view, memanggil model untuk melakukan akses ke basis data, menyediakan penanganan error, mengerjakan proses logika dari aplikasi serta melakukan validasi atau cek terhadap input.


Mengenal PHP Framework: CodeIgniter - CodeIgniter adalah salah satu dari sekian banyak framework PHP yang kini mulai banyak digunakan dalam mengambangkan aplikasi berbasis web.Sebelum melangkah lebih lanjut, ada baiknya kita mengenal dulu apa yang disebut dengan "Framework"??? Jawaban dari pertanyaan tersebut akan sangat membantu pemahaman kita dalam belajar CodeIgniter. Ilustrasi berikut mungkin membantu Anda memahami tentang Framework.
Seorang teman saya bernama Komeng, saat kuliah dulu dia adalah seorang programer freelance. Dia sering mendapatkan proyek-proyek pembuatan sistem informasi berbasis web.Awalnya dia mendesain sistem dan melakukan coding dari awal, sehingga cukup menguras energi, bahkan kuliah pun di-nomordua-kan. Singkat kata dalam waktu dua bulan dia berhasil menyelesaikan proyek pertamanya. Honor pun diterimanya (kuliah makin malas... ha...ha...).
Satu bulan kemudian, datang lagi pesanan pembuatan website dengan fitur yang hampir sama dengan proyek pertama. Langsung saya dia menerima proyek itu dan mengerjakannya.
Dalam mengerjakan proyek yang kedua ini Komeng melihat kembali kode program yang proyek pertamanya, mengedit bagian yang perlu dan menggunakannya pada proyek yang kedua. Sehingga proyek yang kedua ini berhasil dia selesaikan dalam waktu satu bulan.
Saat mengerjakan proyek kedua, Komeng menyadari bahwa ada bagian program yang harus selalu ada untuk digunakan, misalnya kode untuk koneksi ke database, mengirim email, mengatur pagination untuk tampilan data, dll. Sehingga Komen mengumpulkan dan membuat koleksi kode-kode yang dia perlukan sehingga sewaktu-waktu dapat dia gunakan. Dengan begitu dapat menghemat energi dan waktu dalam mengerjakan sebuah website.
Apa yang dilakukan Komeng adalah cikal bakal dari Framework....

Framework dapat disimpulkan sebagai sebuah kumpulan atau koleksi kode-kode program yang memiliki fungsi spesifik, yang terintegrasi dan diorganisasikan sedemikian rupa sehingga dapat digunakan untuk membantu membuat sebuah program aplikasi utuh secara fleksibel dengam memanfaatkan kode-kode yang sudah ada tanpa membuat dari awal.
CodeIgniter
CodeIgniter merupakan salah satu dari sekian banyak framework PHP yang ada. CodeIgniter dikembangkan oleh Rick Ellis (http://www.ellislab.com).

Tujuan dari pembuatan framework CodeIgniter ini menurut user manualnya adalah untuk menghasilkan framework yang akan dapat digunakan untuk pengembangan proyek pembuatan website secara lebih cepat dibandingkan dengan pembuatan website dengan cara koding secara manual, dengan menyediakan banyak sekali pustaka yang dibutuhkan dalam pembuatan website, dengan antarmuka yang sederhana dan struktur logika untuk mengakses pustaka yang dibutuhkan. CodeIgniter membiarkan kita untuk memfokuskan diri pada pembuatan website dengan meminimalkan pembuatan kode untuk berbagai tujuan pembuatan website.

Kenapa CodeIgniter?

Ada banyak sekali framework PHP yang beredar di internet. Lantas kenapa kita memilih CodeIgniter bukan yang lain?? Berikut alasan-alasannya:
  1. Gratis
    CodeIgniter dilisensikan dibawah lisensi Apache/BSD style open source license, ini berarti kita dapat menggunakannya sesuai dengan keinginan kita.
  2. Berjalan di PHP versi 4 dan 5
    Sekarang ini PHP sudah mencapai versi ke 5, meskipun begitu masih banyak orang yang tetap menggunakan PHP versi 4, oleh sebab itu CodeIgniter dikembangkan agar tetap kompatibel dengan PHP versi 4 dan dapat dijalankan pada PGP versi 5.
  3. Ringan dan cepat
    Secara default CodeIgniter hanya berjalan dengan me-load beberapa pustaka saja, dengan demikian hanya membutuhkan resource yang sedikit sehingga ringan dan cepat dijalankan. Pustaka-pustaka lain yang nantinya akan digunakan bisa di load sesuai dengan kebutuhan.
  4. Menggunakan MVC
    CodeIgniter menggunakan lingkungan pengembangan dengan metode Model View Controller (MVC) yang membedakan antara logika dan presentasi/tampilan, sehingga tugas bisa lebih mudah dipecah-pecah. Ada bagian yang khusus membuat tampilan dan bagian yang membuat core programnya.
  5. Dokumentasi
    Salah satu hal yang bisa dijadikan barometer apakah sebuah aplikasi benar-benar dikembangkan atau tidak bisa dilihat dari dokumentasinya. Dalam hal ini CodeIgniter sangat luar biasa, terdapat dokumentasi yang sangat lengkap tentang semua hal yang ada dalam CodeIgniter. Mulai dari langkah instalasi sampai dokumentasi fungsi-fungsi nya tersedia. Adanya dokumentasi sangat memudahkan bagi pemula dalam mempelajari lingkungan pengembangan website dengan CodeIgniter.
  6. Pustaka yang lengkap
    CodeIgniter dilengkapi dengan berbagai pustaka siap pakai untuk berbagai kebutuhan, misalnya saja koneksi database, email, session dan cookies, keamanan, manipulasi gambar dan banyak lagi.
 Fitur-Fitur CodeIgniter
  1. Sistem berbasis Model View Controller (MVC)
  2. Kompatibel dengan PHP versi 4
  3. Ringan dan Cepat
  4. Terdapat dukungan untuk berbagai basis data
  5. Mendukung Active Record Database
  6. Mendukung form dan validasi data masukan
  7. Keamanan dan XSS filtering
  8. Tersedia pengaturan session
  9. Tersedia class untuk mengirim email
  10. Tersedia class untuk manipulasi gambar (cropping,resizing, rotate dan lain-lain) 
  11. Tersedia class untuk upload file
  12. Tersedia class yang mendukung transfer via FTP
  13. Mendukung lokalisasi bahasa
  14. Tersedia class untuk melakukan pagination (membuat tampilan perhalaman)
  15. Mendukung enkripsi data
  16. Mendukung benchmarking
  17. Mendukung caching
  18. Pencatatan error yang terjadi
  19. Tersedia class untuk membuat calendar
  20. Tersedia class untuk mengetahui user agent, misalnya tipe browser dan sistem operasi yang digunakan pengunjung
  21. Tersedia class untuk pembuatan template website
  22. Tersedia class untuk membuat trackback
  23. Tersedia pustaka untuk bekerja dengan XMP-RPC
  24. Menghasilkan clean URL
  25. URI routing yang felksibel
  26. Mendukung hooks, ekstensi class dan plugin
  27. Memiliki helper yang sangat banyak jumlahnya


Instalasi CodeIgniter: Konfigurasi Database - File konfigurasi untuk basis data terdapat didalam direktori system/application/config dengan nama file database.php. Disinilah kita dapat memasukan konfigurasi basis data sesuai dengan aplikasi basis data yang kita miliki, misalnya saja hostname temapt server basis data berada, nama basis data yang akan digunakan, nama user yang digunakan untuk mengakses basis data beserta passwordnya.




$active_group = "default";
$active_record = TRUE;
$db['default']['hostname'] = "localhost";
$db['default']['username'] =”[“nama_user]”;
$db['default']['password'] = "[password]";
$db['default']['database'] = "[nama_database]";
$db['default']['dbdriver'] = "[nama_basisdata]";
$db['default']['dbprefix'] = "";
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = "";
$db['default']['char_set'] = "utf8";
$db['default']['dbcollat'] = "utf8_general_ci";
Keterangan:
$active_group=”default” , digunakan untuk memilih group koneksi ke basis data yang mana yang akan digunakan.
$active_record = TRUE, apakah akan me load active record class atau tidak.
$db['default']['hostname'] = "localhost", adalah nama host server basis data.
$db['default']['username'] = "[nama_user]", adalah nama user yang digunakan untuk mengakses basis data.
$db['default']['password'] = "[password]", adalah password user yang digunakan untuk mengakses basis data.
$db['default']['database'] = "[nama_basisdata]", adalah nama basis data yang digunakan untuk menyimpan data.
$db['default']['dbdriver'] = "[driver_basisdata]", adalah nama server basisdata yang digunakan, contoh diatas adalah mysql.
$db['default']['dbprefix'] = "", nama prefix tabel, misalnya saja jika semua tabel berawalan "ci_" maka masukan value "ci_".
$db['default']['pconnect'] = TRUE , apakah akan menggunakan koneksi persistent ataukah tidak.
$db['default']['db_debug'] = TRUE, apakah akan menampilkan error ataukah tidak.
$db['default']['cache_on'] = FALSE, apakah akan menggunakan caching atau tidak.
$db['default']['cachedir'] = "", jika menggunakan caching maka tentukan direktori caching yang akan digunakan.
$db['default']['char_set'] = "utf8", character set yang akan digunakan untuk berkomunikasi dengan basis data.
$db['default']['dbcollat'] = "utf8_general_ci", character collation yang akan digunakan untuk berkomunikasi dengan basis data.
Jika misalnya ingin membuat group lain maka tinggal ganti default pada array dengan nama group baru tersebut, kemudian rubah nilai variabel $active_group, misalnya saja kita membuat group baru dengan nama blog maka konfigurasinya akan menjadi :
$db['blog']['hostname'] = "localhost";
$db['blog']['username'] =”[“nama_user]”;
$db['blog']['password'] = "[password]";
$db['blog']['database'] = "[nama_database]";
$db['blog']['dbdriver'] = "[nama_basisdata]";
$db['blog']['dbprefix'] = "";
$db['blog']['pconnect'] = TRUE;
$db['blog']['db_debug'] = TRUE;
$db['blog']['cache_on'] = FALSE;
$db['blog']['cachedir'] = "";
$db['blog']['char_set'] = "utf8";
$db['blog']['dbcollat'] = "utf8_general_ci";

Author Name

Formulir Kontak

Nama

Email *

Pesan *

Diberdayakan oleh Blogger.