18 Mei 2009

Mengenal Codeigniter

Apa itu Codeigniter ?

CodeIgniter adalah sebuah Application Development Framework (toolkit) bagi pembuat website dengan menggunakan PHP, dengan tujuan mempermudah pengerjaan website agar menjadi lebih cepat karena Codeigniter telah menyediakan suatu kumpulan library yang sering dipergunakan dalam pembuatan website. Dengan demikian jumlah kode dalam pembuatan sebuah website menjadi lebih sedikit.

Cara melakukan Instalasi

  1. Download file codeigniter disini dan lakukan unzip (extract file).
  2. Upload file hasil unzip ke server Anda.
  3. Edit file 'application/config/config.php' dengan menyesuaikan nilai Base URL, Enkripsi (encryption) atau Sesion (sessions) dan Enkripsi Kunci (encryption key).
  4. Jika Anda menggunakan database, silakan edit file 'application/config/database.php' dan silakan menyesuaikan setting database.
Fitur-fitur yang dimiliki Codeigniter
  • Model-View-Controller Based System
  • PHP 4 Compatible
  • Extremely Light Weight
  • Full Featured database classes with support for several platforms.
  • Active Record Database Support
  • Form and Data Validation
  • Security and XSS Filtering
  • Session Management
  • Email Sending Class. Supports Attachments, HTML/Text email, multiple protocols (sendmail, SMTP, and Mail) and more.
  • Image Manipulation Library (cropping, resizing, rotating, etc.). Supports GD, ImageMagick, and NetPBM
  • File Uploading Class
  • FTP Class
  • Localization
  • Pagination
  • Data Encryption
  • Benchmarking
  • Full Page Caching
  • Error Logging
  • Application Profiling
  • Scaffolding
  • Calendaring Class
  • User Agent Class
  • Zip Encoding Class
  • Template Engine Class
  • Trackback Class
  • XML-RPC Library
  • Unit Testing Class
  • Search-engine Friendly URLs
  • Flexible URI Routing
  • Support for Hooks, Class Extensions, and Plugins
  • Large library of "helper" functions
Flowchart Aplikasi


Grafik diatas menggambarkan bagaimana data mengalir di seluruh sistem:
  1. index.php yang berfungsi sebagai kontrol utama.
  2. Router yang meneliti permintaan HTTP untuk menentukan apa yang harus dilakukannya.
  3. Jika ada File Cache, maka langsung dikirim ke browser.
  4. Security, permintaan HTTP disaring sebelum menjalankan Application Controller.
  5. Controller memanggil Model, Core Libraries, Plugins, Helpers, dan lainnya yang diperlukan untuk memproses permintaan tertentu.
  6. Hasil tampilan kemudian dikirim ke web browser untuk dilihat. Jika caching dihidupkan, maka hasil tampilan akan di-cache terlebih dahulu untuk dipergunakan pada permintaan selanjutnya.
Model-View-Controller

CodeIgniter didasarkan pada pola Model-View-Controller (MVC). MVC adalah sebuah pendekatan perangkat lunak yang memisahkan aplikasi logika dari presentasi.
  • Model merepresentasikan struktur data Anda. Biasanya anda Model berisi fungsi-fungsi yang akan membantu Anda mengambil, memasukkan, dan update informasi dalam database Anda.
  • View adalah informasi yang ditampilkan kepada pengguna.
  • Controller berfungsi sebagai perantara antara Model, View, dan lainnya yang diperlukan untuk memproses permintaan HTTP dan menghasilkan sebuah halaman web.