codeigniter indonesia
Tutorial

CodeIgniter Indonesia 5 Installasi dan Konfigurasi CodeIgniter

Agar dapat menggunakan CodeIgniter, Anda harus menginstall dan melakukan konfigurasi terhadap CodeIgniter terlebih dahulu. Installasi CodeIgniter sangatlah mudah. Dengan menggunakan konfigurasi default saja maka CodeIgniter sudah dapat berjalan di web server Anda. Hal-hal yang harus dipersiapkan dalam menginstall CodeIgniter adalah

Mempersiapkan Web Server

Seperti yang kita tahu bahwa PHP adalah bahasa pemrograman website yang berjalan disisi server oleh karena itu untuk dapat menjalankan website yang dibuat dengan menggunakan PHP, di komputer harus terinstall aplikasi web server yang mendukung PHP. Banyak sekali aplikasi web server yang beredar, salah satu web server yang sangat terkenal dan juga bersifat bebas adalah web  server Apache, sebuah web server  yang digunakan pada sebagian server yang  ada di internet.

Untuk website yang melibatkan basis data sebagai tempat penyimpanan datanya maka tidak perlu bingung karena CodeIgniter juga mendukung berbagai jenis server basis data, yaitu MySQL, MySQLi, MS SQL, PostgreeSQL, Oracle, dan SQLite. CodeIgniter juga bisa dijalankan di semua sistem operasi yang bisa menjalankan aplikasi-aplikasi di atas, baik Windows, Linux, BSD dan yang lainnya.

Instalasi CodeIgniter

Instalasi CodeIgniter sangat mudah. Meskipun namanya instalasi tetapi karena CodeIgniter adalah aplikasi berbasis website maka sebenarnya yang perlu dilakukan adalah meng-copy folder aplikasi CodeIgniter ke dalam folder htdocs atau DocumentRoot dari web server yang telah diinstall sebelumnya. Berbeda dengan instalasi software pada umumnya.

Sebelum  melakukan  instalasi  yang  perlu  dilakukan  pertama  kali  adalah  mendapatkan  kode sumber dari CodeIgniter itu sendiri yang dapat didownload di http://www.CodeIgniter.com/ (disediakan pula di dalam CD penyerta buku). Selanjutnya letakkan folder hasil ekstrak tadi di DocumentRoot web server, yaitu folder htdocs didalam direktori C:\\apachefriends\xampp bagi yang  menggunakan  XAMPP  di  Windows  atau  /var/www/html  bagi  yang  menggunakan  linux (semua tergantung dimana anda menginstall dan mengkonfigurasi webserver).

Dengan menggunakan konfigurasi default saja maka CodeIgniter sudah dapat berjalan di web server  Anda.  Adapun  struktur  utama  dari  CodeIgniter  terbagi  menjadi  dua  bagian,  yaitu application dan sistem/core CodeIgniter. Application adalah tempat kita meletakkan code yang akan dibuat (bewarna merah dan hijau sedangkan sistem/core CodeIgniter yang bewarna ungu) . Folder sistem berisi library-library dan helper bawaan CodeIgniter.

 

Adapun susunan folder CodeIgniter secara default adalah:

Folder application: disinilah aplikasi yang akan kita bangun diletakkan.

Folder config – tempat menyimpan semua file konfigurasi yang ada di dalam aplikasi, mulai dari database, router dan autoload aplikasi.

Folder controllers – tempat menyimpan semua file controller.

Folder errors – tempat menyimpan semua template error aplikasi.

Folder helpers – tempat menyimpan helper-helper yang bukan berasal dari CI.

Folder hooks – tempat menyimpan hook yang digunakan untuk mengubah alur fungsi dari core CI.

Folder language – tempat menyimpan bahasa-bahasa yang akan di gunakan.

Folder libraries – tempat menyimpan semua library buatan kita sendiri.

Folder models – tempat menyimpan semua model.

Folder views – tempat menyimpan semua file view aplikasi.

Folder system menyimpan semua file baik itu file aplikasi yang dibuat maupun core framework- nya.

Folder cache – tempat menyimpan semua cache yang dibuat caching library.

Folder codeigniter – tempat menyimpan semua semua file internals CI.

Folder database – tempat menyimpan semua driver database drivers dan class yang akan digunakan.

Folder fonts – tempat menyimpan semua font yang digunakan image manipulation library.

Folder helpers – tempat menyimpan semua helper core CI.

Folder language – tempat menyimpan semua language core CI.

Folder libaries – tempat menyimpan semua library core CI

Folder logs – tempat menyimpan semua logs generated oleh CI.

Folder plugin – tempat menyimpan semua plugin core CI.

Folder scaffolding – tempat menyimpan semua file yang berfungsi sebagai scaffolding .

Folder user_guide berisi userguide/manual penggunaan CI.

File index.php file yang akan menghandle semua request yang dilakukan oleh client.

Setelah meletakkan CodeIgniter ke dalam folder htdocs maka akan didapatkan tampilan seperti di bawah ini, artinya CodeIgniter telah sukses berjalan di aplikasi Anda.

Adapun checklist yang harus dilakukan untuk menjalankan CodeIgniter secara default adalah

  • Pastikan Apache dan PHP telah terinstall dan berjalan di komputer.
  • Pastikan peletakkan source code CodeIgniter di folder/direktory web apache (biasanya htdocs) dan memiliki permission setidak-tidaknya read only atau kode 644.

Konfigurasi CodeIgniter

Walaupun CodeIgniter dapat berjalan dengan konfigurasi default, tetapi untuk sebuah aplikasi yang nyata kita harus tetap melakukan konfigurasi, setidaknya pada bagian base_url dan router. Pengaturan  base_url  dan  router  sangat  berguna  ketika  proses  pengembangan  aplikasi  yang banyak menggunakan helper dan library.

File konfigurasi terletak dalam folder application/config. Adapun file-file yang terdapat dalam direktori tersebut dan sering digunakan antara lain:

Config.php. Pada  file  konfigurasi  config.php  berisi  konfigurasi  secara  umum  mengenai CodeIgniter, seperti peletakkan baseurl, suffix, frontcontroller, serta metode yang digunakan URI dan lain-lain. Adapun konfigurasi-konfigurasi yang perlu diperhatikan adalah :

$config[‘base_url’] – Konfigurasi ini berisi alamat url sebuah aplikasi. Jika menggunakan helper url maka konfigurasi ini harus di-set dengan benar. Contoh: aplikasi Anda akan diakses dengan menggunakan domain www.contoh.com/app_ci maka pada konfigurasi ini harus diisikan:

$config[‘base_url’]=”http://www.contoh.com/app_ci/”;

Tetapi jika ingin menggunakan base url yang lebih fleksibel maka dapat menggantinya dengan variabel server. Contoh:

$config[‘base_url’]=”http://”.$_SERVER[‘HTTP_HOST’]. str_replace(basename($_SERVER[‘SCRIPT_NAME’]),””,

$_SERVER[‘SCRIPT_NAME’]);

$config[‘index_php’] – Konfigurasi ini berisi file yang menjadi frontcontroller. Konfigurasi ini berhubungan dengan base_url. Jika menggunakan .htaccess untuk mempercantik url maka isi variabel ini harus dikosongkan.

$config[‘uri_protocol’] – Konfigurasi ini bertujuan untuk menentukan bagaimana library URI bekerja. CodeIgniter dapat menangkap URI yang  di berikan melalui 4  cara yaitu PATH_INFO, QUERY_STRING, REQUEST_URI dan ORIG_PATH_INFO. Masing-masing cara mempunyai kelebihan dan kekurangan masing-masing, bahkan tidak  semua web server mendukung semua cara tersebut, oleh karena itu secara default digunakan pilihan auto. Tetapi jika aplikasi membutuhkan sesuatu yang lebih custom maka pemilihan metode URI secara langsung akan lebih baik. Lebih lanjut akan dibahas dibagian library.

o $config[‘url_suffix’] – Konfigurasi ini bertujuan untuk menambahkan akhiran pada url.

Contoh Anda mempunyai sebuah controller page, maka controller tersebut akan diakses melalui  http://localhost/index.php/page,  dengan  menambahkan  url_suffix  berisi  “html” maka url tadi dapat juga diakses melalui  http://localhost/index.php/page.html.

$config[‘language’] – Secara default CodeIgniter sudah mendukung banyak bahasa/multy language. Kita dapat mengubah pesan-pesan yang  ada  di  dalam  CodeIgniter dengan bahasa yang kita kehendaki. Untuk mengubah bahasa tersebut cukup dengan mendownload paket bahasa yang diinginkan lalu uraikan di dalam direktori system/languages/[nama_lang]  lalu Anda tinggal mengubah nama_lang di config.

$config[‘enable_hooks’]  –  Konfigurasi  ini  bertujuan  mengaktifkan/menonaktifkan  hook pada  CodeIgniter.  Hook  dapat  dikatakan  event-event  yang  terjadi  pada  CodeIgniter, dimana kita bisa meletakkan fungsi di dalamnya. Hook akan bermanfaat sekali ketika Anda ingin mengubah perilaku CodeIgniter maupun untuk logging event. Contoh: Anda ingin mengubah urutan loading library dimana Anda sudah meng-extend   library router untuk menggunakan database untuk aturan routing-nya. Artinya Anda harus meload library database sebelum library loader. Hal tersebut bisa dilakukan melalui hook.

$config[‘subclass_prefix’]   =   ‘MY_’.   Jika   kita   ingin   mengubah/mengextend   library

CodeIgniter maka library tersebut harus memliki prefik yang sama dengan konfigurasi ini.

$config[‘permitted_uri_chars’]. Konfigurasi ini bertujuan untuk keamanan CodeIgniter.

Konfigurasi ini menentukan karakter apa saja yang bolah digunakan di dalam uri.

$config[‘log_threshold’].   Konfigurasi   ini   menentukan   bagaimana   sistem   logging CodeIgniter bekerja. Sistem logging ini sangat membantu dalam proses pengembangan terutama  ketika  debugging.  Jika  di  set  0  maka  tidak  ada  proses  logging  error  di CodeIgniter. Jika di set 1 maka yang dicatat hanyalah pesan-pesan kesalahan yang termasuk kesalahan PHP. Jika di set 2 maka akan menampilkan semua pesan debug dan pesan kesalahan CodeIgniter dan PHP. Jika di set 3 maka logging-loging yang berisi informasi seperti sebuah library telah di load juga akan ditampilkan. Jika di set 4 maka semuanya akan dilog mulai dari error, pesan debug sampai yang bersifat informasi.

$config[‘log_path’]. Dikonfigurasi ini kita dapat menentukan dimana log akan diletakkan.

Jika diisi kosong maka akan diletakkan di system/logs. Harus dingat Anda harus mengubah tingkat hak akses dari direktori tersebut menjadi dapat ditulisi / writeable jika kita menggunakan fasilitas logging.

Konfigurasi  session.  Session  di  CodeIgniter  menggunakan  cookies  jadi  kita  dapat mengeset waktu hidup cookies/expire, nama cookies dan lain-lain melalui konfigurasi ini.

$config[‘sess_cookie_name’]=’Nama cookie’;

$config[‘sess_expiration’]=7200;

$config[‘sess_encrypt_cookie’]=FALSE;

$config[‘sess_use_database’]=FALSE;

$config[‘sess_table_name’]=’session_table’;

$config[‘sess_match_ip’]=FALSE;

$config[‘sess_match_useragent’]=TRUE;

$config[‘sess_time_to_update’]=300;

Autoload.php. Konfigurasi ini bertujuan untuk mementukan sumber  daya  apa  yang  akan diload secara otomatis. Cara penggunaannya sederhana, misalnya kita ingin meload library database,   pagination   dan   lain-lain   secara   otomatis   maka   kita   tinggal   mengubah

$autoload[‘libraries’] menjadi :

$autoload[‘libraries’]=array(‘database’,’session’,’pagination’)

Routes.php. Konfigurasi di file ini bertujuan untuk menentukan kemana routing oleh library route akan dilakukan. Hal paling sederhana yang harus dilakukan adalah mengubah default controller (controller yang akan dibuka ketika tidak ada uri yang diberikan oleh browser). Misalnya website kita beralamat www.koder.web.id. Maka ketika membuka website tersebut maka secara otomatis CodeIgniter akan mengalihkan ke controller default, karena tidak disertakan di dalam url kita. Adapun yang perlu diubah adalah

$route[‘default_controller’]=”welcome”;

Kesepakatan Coding (Coding Standart) CodeIgniter

Sebelum melakukan coding menggunakan codeigniter maka ada baiknya kita mengetahui apasaja kesepakatan-kesepakatan yang ada di codeigniter. Kesepakatan-kesepakatan tersebut akan membuat kode kita lebih mudah dipahami oleh developer lainnya . Adapun kesepakaatan tersebut diantaranya :

  • PHP Closing Tag

Ketika kita menulis library, helper, controller ataupun model maka sebaiknya tidak menggunakan tanda penutup pada dokumen php ?>. Hal tersebut dilakukan untuk mencegah adanya spasi atau karakter yang tidak diinginkan pada code kita sehingga membuat aplikasi error. Kita juga disarankan untuk memberikan infomasi tentang akhir dokumen dan berisi path dokumen tersebut.

Contoh salah:

<?php echo “Here’s my code!”; ?>

Contoh Benar:

<?php echo “Here’s my code!”;

/* End of file myfile.php */

/* Location: ./system/modules/mymodule/myfile.php */

  • Penamaan Class dan Method

Penamaan Class harus dimulai dengan huruf besar. Jika class menggunakan beberapa kata maka kata-kata tersebut dipisahkan menggkanan underscore dan bukan camelcase.

Contoh salah: class superclass class SuperClass

Contoh Benar:

class Super_class

Aturan diatas juga berlaku untuk method contohnya

Contoh kurang tepat:

function fileproperties() //Tidak deskriptif dan memiliki underscore function fileProperties() // Tidak deskriptif dan underscore CamelCase function getfileproperties() // Kurang underscore

function getFileProperties() // menggunakan CamelCase

get_the_file_properties_from_the_file() // terlalu panjang

Contoh Tepat:

function get_file_properties() //deskriptif, pakai underscore, dan huruf kecil

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

%d blogger menyukai ini: