Belajar CodeIgniter 3 – Dasar Routing

Memulai

Untuk direktori routing ini berada pada application/config/routes.php
ci3-routing-2
Dari situ, kita akan membuat alur aplikasi CI kita. Secara default file routes.php sebagai berikut:
Pada bagian kode $route['default_controller'] = 'welcome'; itu menunjukan tentang default controller atau controller yang pertama kali dibaca oleh CI, default nya adalah ada pada controller welcome.
Jika Anda ingin merubah $route['default_controller'] = 'welcome' menjadi nama lain misalnya $route['default_controller'] = 'selamatdatang'. Maka Anda wajib pula merubah file di application/controllers/Welcome.php Anda rename file tersebut menjadi Selamatdatang.
ci3-routing-1
Perhatian!
 Dalam CI penamaan file pada controller wajib huruf awal dengan huruf kapital, dalam contoh artikel ini adalah selamatdatang, maka di tulis dengan Selamatdatang. Begitu juga dalam class nya wajib huruf awal dengan kapital.
ci3-routing-3
Kemudian untuk kode $route['404_override'] = ''; ini adalah berfungsi untuk memberi tahu CI apabila default controller tidak ditemukan atau jika ada controller lain atau halaman lain yang tidak ditemukan. Sebagai contoh:
ci3-routing-4
Kemudian Anda buat file di application/controllers/Galat.php dan isikan kode sebagai berikut:
Coba Anda buat sengaja meng-error-kan CI Anda, misalnya dengan memasukan URL http://localhost/ci3/index.php/error404 maka browser Anda akan menampilkan sebagai berikut:
ci3-routing-5
Kemudian untuk kode $route['translate_uri_dashes'] = FALSE; Ini adalah berfungsi jika Anda merubah nilainya menjadi TRUE, maka Anda dibolehkan dalam URL browser Anda menulis dengan tanda dash (-). Sebagai contoh Anda ingin menjadikan Controller Selamatdatang Anda menjadi selamat-datang, maka Anda ubah pada routes.php sebagai berikut:
Kemudian pada file application/controllers/Selamatdatang.php Anda rename menjadi selamat_datang.php.
ci3-routing-6
Begitu juga pada class nya Anda rubah menjadi class Selamat_datang extends CI_Controller . Pertanyaannya, mengapa harus menggunakan underscore pada nama file dan nama class controller nya? Dalam PHP nama class tidak boleh menggunakan tanda dash (-) (tanda strip dalama bahasa Indonesianya), dan ini juga berpengaruh pada penamaan file, di mana CI membaca class controllerberdasarkan nama file.
Jika semua sudah dilakukan kemudian mari kita tes dengan link berikut: http://localhost/ci3/index.php/selamat-datang
ci3-routing-7
Mudah bukan?

Menghilangkan index.php

Pada kasus contoh di artikel ini, saya selalu menulisan link dengan index.php nya, misalnya tadi http://localhost/ci3/index.php/selamat-datang. Untuk memperindah atau menjadikan pretty URLhalaman web kita dengan menghilangkan index.php maka perlu langkah berikut:
  1. Pastikan module mod_rewrite dalam Apache Anda sudah aktif. Dengan cara httpd -M | grep rewrite.
  2. Anda buat dahulu file .htaccess di dicretory CI Anda. Untuk pengguna Unix/Unix-like atau Linux, pastikan File Manager Anda sudah diaktifkan pengaturan show hidden file.
    ci3-routing-8
  3.  Kemudian masukan kode berikut pada file .htaccess:
  4.  Pastikan pada application/config/config.php Anda kode $config['index_page'] = ''; bernilai kosong.
    ci3-routing-9
  5. Jika sudah langkah terakhir adalah mengtesnya misalnya: http://localhost/ci3/selamat-datang
ci3-routing-10

Kesimpulan

Routing merupakan bagian awal terpenting sebelum memulai menggunakan framework. Bagaimana tidak? Dengan adanya routing ini lah yang memberi tahu framework tentang alur aplikasi yang akan kita buat. Pada artikel ini saya memberikan sebuah routing di CI secara sederhana, ini belum semuanya tuntas karena hanya pada dasar pengetahuan saja. Insya Allah pada artikel berikutnya saya akan lebih memperjelas masalah routing ini.
Semoga bermanfaat.

Belajar CodeIgniter 3 – Dasar Routing Belajar CodeIgniter 3 – Dasar Routing Reviewed by Unknown on October 31, 2017 Rating: 5

No comments:

Powered by Blogger.