Memperdalam Ilmu programming dengan belajar CodeIgniter

Sekilas Tentang CodeIgniter

CodeIgniter itu Sebuah Aplikasi Framework

CodeIgniter

CodeIgniter adalah sebuah Application Development Framework (toolkit) bagi orang-orang yang ingin membangun website menggunakan PHP. Tujuannya adalah untuk memungkinkan Anda mengembangkan proyek-proyek lebih cepat daripada Anda menulis kode dari awal, tersedia banyak libary untuk tugas-tugas yang biasa diperlukan, serta antarmuka dan struktur logis yang sederhana untuk mengakses library ini. CodeIgniter memungkinkan Anda fokus pada proyek Anda dengan meminimalkan jumlah kode yang dibutuhkan untuk tugas yang diberikan.

CodeIgniter itu Gratis

CodeIgniter dilisensikan di bawah lisensi MIT sehingga Anda dapat menggunakannya sesuka hati Anda. Untuk informasi lebih lanjut silahkan baca license agreement.

CodeIgniter itu Ringan

Benar-benar ringan. Sistem inti hanya memerlukan beberapa library yang sangat kecil. Hal ini kontras dengan banyak framework yang membutuhkan lebih banyak sumber daya secara signifikan. Library tambahan dimuat secara dinamis atau sesuai permintaan, berdasarkan kebutuhan Anda untuk proses tertentu, sehingga sistem dasar sangat ramping dan cukup cepat.

CodeIgniter itu Cepat

Sangat cepat. Kami menantang Anda untuk menemukan framework yang memiliki kinerja lebih baik dari CodeIgniter.

CodeIgniter Menggunakan M-V-C

CodeIgniter menggunakan pendekatan Model-View-Controller, yang memungkinkan pemisahan antara logika dan presentasi. Ini sangat baik untuk proyek yang dimana desainer bekerja dengan file template Anda, sehingga kode di file ini menjadi minimal. Kami menjelaskan MVC lebih detail pada halamannya sendiri.

CodeIgniter Menghasilkan URL yang Bersih

URL yang dihasilkan oleh CodeIgniter bersih dan search-engine friendly. Daripada menggunakan standar “query string” pendekatan ke URL yang identik dengan sistem dinamis, CodeIgniter menggunakan pendekatan segment-based:

example.com/news/article/345

Catatan: Secara default file index.php disertakan dalam URL tetapi bisa dihapus menggunakan file .htaccess yang sederhana.

Keunggulan CodeIgniter

Fitur dalam dan dari diri mereka sendiri adalah cara yang sangat buruk untuk menilai sebuah aplikasi karena mereka belum memberitahu Anda apa-apa tentang pengalaman pengguna, atau bagaimana itu dirancang secara cerdas atau intuitif. Fitur tidak mengungkapkan apa-apa tentang kualitas kode, atau kinerja, atau perhatian terhadap detail, atau penerapan keamanan. Satu-satunya cara untuk benar-benar menilai sebuah aplikasi adalah dengan mencobanya dan mengenal kodenya. Instalasi CodeIgniter sangat mudah, oleh karena itu kami mendorong Anda untuk melakukan hal itu. Sementara itu, ini adalah daftar fitur utama CodeIgniter.

  • Sistem berbasis MVC
  • Sangat ringan
  • Database Class yang lengkap dengan dukungan untuk beberapa platform.
  • Dukungan query builder untuk database
  • Form dan validasi data
  • Keamanan dan penyaringan XSS
  • Manajemen sessions
  • Email Sending Class. Mendukung lampiran, HTML/Text email, beberapa protokol (sendmail, SMTP, dan Mail) dan banyak lagi.
  • Image Manipulation Library (cropping, mengubah ukuran, memutar, dll). Mendukung GD, ImageMagick, dan Netpbm
  • File Uploading Class
  • FTP Class
  • Localization
  • Pagination
  • Enkripsi data
  • Benchmarking
  • Full Page Caching
  • Error Logging
  • Application Profiling
  • 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
  • Dukungan untuk Hooks dan Class Extensions
  • Kumpulan library fungsi-fungsi “helper” yang besar

Alur Aplikasi

Grafik berikut menggambarkan bagaimana alur data melewati sistem:

Alur Data
  1. File index.php berfungsi sebagai front controller, menginisialisasi resource utama yang dibutuhkan untuk menjalankan CodeIgniter.
  2. Router memeriksa HTTP requestuntuk menentukan apa yang harus dilakukan dengan itu.
  3. Jika file cache ada, dikirim langsung ke browser, melewati eksekusi sistem normal.
  4. Keamanan. Sebelum controller aplikasi dimuat, HTTP request dan setiap data pengguna yang di submit disaring terlebih dahulu untuk keamanan.
  5. Controller memuat model, library utama, helper, dan setiap resourcelainnya yang diperlukan untuk memproses permintaan khusus.
  6. View di render kemudian dikirim ke web browser agar dapat dilihat. Jika caching diaktifkan, view di cache terlebih dahulu sehingga pada permintaan berikutnya dapat dilayani.

Model-View-Controller

CodeIgniter didasarkan pada pola pengembangan Model-View-Controller. MVC adalah pendekatan perangkat lunak yang memisahkan logika aplikasi dari presentasi. Dalam prakteknya, itu memungkinkan halaman web Anda memiliki scripting yang minimal karena presentasi terpisah dari scripting PHP.

  • Model mewakili struktur data Anda. Biasanya class model Anda akan berisi fungsi yang membantu Anda mengambil, menyimpan, dan memperbarui informasi dalam database Anda.
  • View adalah informasi yang disajikan kepada pengguna. View yang biasanya akan menjadi halaman web, tetapi dalam CodeIgniter, view juga bisa menjadi bagian dari sebuah halaman seperti header atau footer. Hal ini juga dapat menjadi halaman RSS, atau jenis-jenis lain dari “halaman”.
  • Controller berfungsi sebagai perantara antara Model, View, dan resourcelain yang diperlukan untuk memproses HTTP request dan menghasilkan halaman web.

CodeIgniter memiliki pendekatan yang cukup longgar untuk MVC karena Model tidak selalu diperlukan. Jika Anda tidak perlu menambahkan pemisahan, atau menemukan bahwa mempertahankan sebuah modelmemerlukan kompleksitas lebih dari yang Anda inginkan, Anda bisa mengabaikan mereka dan membangun aplikasi Anda dengan minimal menggunakan Controller dan View. CodeIgniter juga memungkinkan Anda untuk memasukkan script Anda sendiri, atau bahkan mengembangkan libraryinti untuk sistem, memungkinkan Anda untuk bekerja dengan cara yang paling masuk akal bagi Anda.

Error yang terjadi pada saat belajar menggunakan Codeigniter

dalam masalah mengoding pasti saja kita akan mendapatkan error, semisal ini contohnya

Error 1

Ini baris code saya :

ternyata jawaban dari error tersebut adalah:

Kurangnya penambahan tanggal dan waktu

date_default_timezone_set("Asia/Jakarta");

error 2

Dalam artikel kali ini saya akan sharing bagaimana mengatasi error dalam Framework CodeIgniter jika menggunakan PHP versi 5.6. Kalau teman-teman sudah sempat melakukan upgrade XAMPP dalam versi yang terbaru, pastinya pernah mengalami error pada aplikasi kamu yang dibangun menggunakan CodeIgniter. Hal ini tentunya membuat kita bingung, padahal semua kode program sudah berjalan dengan baik.

Ternyata hal ini memang merupakan problem tersendiri untuk Framework CodeIgniter yang tidak suport dengan PHP 5.6, pihak developer pun sudah mengkonfirmasi akan segera memperbaiki sistemnya untuk CI versi 3.0 atau selanjutnya.

Error tersebut terjadi pada baris 257 dalam sistem system/core/Common.php.

Nah, silahkan coba ganti kode tersebut dengan kode perintah di bawah.

Sekarang refresh browser kamu.

error 3

localhost/ci/index.php/wellcome/hello.. disini terjadi typo atau salah pengetikan pada kata welcome seharusnya menjadi Welcome.

agar muncul seperti ini

error 4

kesalahan pada penempatan folder

Hal ini sering terjadi pada pemula yang akan memulai mengoding menggunakan CI karena di CI tersebut terdapat banyak folder yang tentunya membuat semakin rumit, tetapi hal tersebut sebenannya untuk mempermudah ketika terjadi pengembangan, karena semua file sudah terorganisir dengan baik

error 5

bahasa yang berbeda dengan yang sudah saya pelajari

bahasa CodeIgniter ini memiliki bahas yang hampir sama tetapi berbeda dengan PHP, pada saat mencoba ngoding pake CI saya kebingungan karena dari connector terdapat banyak coding. tetapi pada Create Rename Update dan Delete tidak jauh berbeda.