+6281 911 911 301

Dasar yang Perlu Diketahui Saat Membuat Web dengan Codeigniter

Di dalam pembuatan web dengan menggunakan framework Codeigniter terdapat beberapa aturan dasar yang sering kurang diperhatikan oleh programmer yang baru belajar framework ini. Beberapa dari mereka kebingungan kenapa muncul error padahal bait program yang dibuat sudah benar. Berikut saya berikan beberapa hal yang perlu diperhatikan saat membuat web dengan Codeigniter.

Aturan penamaan file controller

Banyak yang baru belajar framework codeigniter salah dalam penamaan file controller yang mereka buat. Seringkali hal ini menyebabkan mereka bingung kenapa file website yang sebelumnya berjalan normal di localhost yang diinstal di windows menjadi error setelah di hosting ke server yang berbasis linux.

Hal ini diakibatkan oleh case sensitive karakter yang dimiliki oleh sistem operasi linux. Secara aturan yang diterapkan oleh framework codeigniter yaitu penamaan controller harus diawali dengan huruf besar.

Seperti contoh nama controller bawaan codeigniter.

Welcome.php

Awalan nama controller diawali dengan huruf besar, kemudian jika dilihat ke dalam file Welcome.php didapat bait program berikut:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Welcome extends CI_Controller {
  /**
  * Index Page for this controller.
  *
  * Maps to the following URL
  * http://example.com/index.php/welcome
  * - or -
  * http://example.com/index.php/welcome/index
  * - or -
  * Since this controller is set as the default controller in
  * config/routes.php, it's displayed at http://example.com/
  *
  * So any other public methods not prefixed with an underscore will
  * map to /index.php/welcome/<method_name>
  * @see https://codeigniter.com/user_guide/general/urls.html
  */
  public function index()
  {
    $this->load->view('welcome_message');
  }
}

Dari bait program di atas dapat dilihat penamaan class memiliki nama yang sama dengan diawali huruf besar. Jadi jika anda hendak membuat controller baru, hendaknya menggunakan aturan ini, agar nantinya tidak mengalami error saat diterapkan di server linux.

Htaccess halaman

Dalam beberapa kasus htaccess memiliki peranan penting untuk memberikan akses kepada pengguna untuk memproses bait program website. Begitu pula dengan framework Codeigniter, seperti yang saya pernah alami, ketika mengakses localhost/website berjalan dengan normal. Namun ketika mengakses localhost/website/controller/function atau localhost/website/routing malah mendapat error 404 page not found.

Dalam hal ini, permasalahan di atas dapat diselesaikan dengan menambahkan file htaccess pada direktori yang setara dengan folder application. Sehingga menghasilkan struktur seperti berikut.

Namawebsite/
- application [folder]
- system [folder]
- user_guide [folder]
- .editorconfig
- .gitignore
- .htaccess
- composer.json
- contributing.md
- index.php
- license.txt
- readme.rst

File htaccess yang saya gunakan biasanya seperti berikut.

<IfModule mod_rewrite.c>
RewriteEngine On

# Send would-be 404 requests to Craft
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/(favicon\.ico|apple-touch-icon.*\.png)$ [NC]
RewriteRule (.+) index.php?p=$1 [QSA,L]


Baca juga: Htaccess Redirect 301 pada Codeigniter

Dengan menggunakan htaccess di atas maka permasalahan page not found seperti kasus di atas dapat teratasi.

Pembagian model, view, dan controller

Untuk menjadikan bait program anda lebih terstruktur, rapi, serta mudah untuk melakukan pengelolaan maka anda harus memaksimalkan MVC yang dimiliki oleh framework Codeigniter ini.

Baca juga: Pengenalan Codeigniter dari Struktur Folder, Fungsi, dan Instalasinya

Dengan MVC membagi bait program menjadi tiga jenis yaitu coding untuk pengelolaan database yang diletakkan di model, kemudian coding yang digunakan untuk mengontrol semua aktifitas dalam website ke dalam controller, dan yang terakhir coding untuk tampilan website ke dalam views.

Baca juga: Membuat Templit HTML pada Framework Codeigniter

Dengan menggunakan templit untuk coding html yang dibuat maka proses memaksimalkan file view dalam website dapat dilakukan. Anda juga tidak perlu mengulang coding yang sama untuk beberapa bagian di web anda.

Routing untuk setiap function

Routing sangat bermanfaat bagi anda yang sering kali mengirimkan parameter melalui url. Parameter tersebut dapat berupa id ataupun kata yang akan dipakai dalam sebuah pengkondisian website. Selain itu route dapat memberikan tampilan link yang rapi dan sesuai dengan keinginan meskipun contoller dan function yang diakses tidak memiliki nama yang sesuai.

Dengan memanfaatkan routing maka anda mendapat beberapa hal berikut:

  1. URL lebih pendek dan dapat diatur sesuai keinginan.
  2. Lebih mudah menganalisa parameter yang dikirimkan melalui URL.
  3. Merupakan URL alias dari nama controller dan function yang dirujuk, sehingga tidak secara langsung memunculkan nama controller dan function yang dirujuk.
  4. URL menjadi lebih rapi.

Lalu bagaimana penerapan routing pada Codeigniter?

Penerapannya sangat mudah, buka file routes.php pada application/config/ maka akan tampil kurang lebih seperti berikut.

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
$route['default_controller'] = 'welcome';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;

Pada bait kode di atas terdapat tiga routing, untuk membuat route baru maka ketik di bawah kode di atas dengan fomat:

$route['nama-route'] = 'NamaController/namafunction';

Penjelasan:

  • nama-route bisa anda sesuaikan sesuai keinginan anda disesuaikan dengan tujuan dari url tersebut. Seperti contoh untuk menampilkan halaman profil bisa dibuat $route[‘profil’].
  • NamaController disesuaikan dengan nama controller yang dituju, seperti contoh ProfilControl.
  • namafunction disesuaikan dengan nama function yang ada di NamaController, seperti contoh pada ProfilControl ada function yang diberi nama view_profil untuk menampilkan halaman profil.

Maka dari contoh diberikan akan menghasilkan route seperti berikut $route[‘profil’]=’ProfilControl/view_profil; dimana route ini akan menampilkan halaman profil.

Baca juga: Penerapan URL Routing pada Framework Codeigniter

Demikian artikel mengenai dasar yang perlu diketahui saat membuat web dengan Codeigniter, semoga artikel ini bisa membantu anda dalam memahami framework Codeigniter.



Artikel Terkait

Fungsi index.html pada Folder Codeigniter
Dipublikasikan
29 Oct 2017

Fungsi index.html pada Folder Codeigniter

Artikel ini menjelaskan tujuan dari penggunaan index.html pada setiap folder di Framework Codeigniter
Membuat Templit HTML pada Framework Codeigniter
Dipublikasikan
8 Oct 2017

Membuat Templit HTML pada Framework Codeigniter

Membuat templit html pada CodeIgniter akan mempersimpel coding website anda dan sekaligus mempermudah anda dalam memanajemen halaman.
Redirect SSL pada Codeigniter dengan Hooks
Dipublikasikan
2 Oct 2017

Cara Redirect SSL pada Codeigniter dengan Hooks

Anda pengguna framework codeigniter dan saat ini kebingungan untuk redirect SSL, anda dapat membaca artikel ini.
Htaccess redirect 301 pada Codeigniter
Dipublikasikan
2 Oct 2017

Htaccess Redirect 301 pada Codeigniter

Anda mendapat error 301 dari aplikasi SEO yang anda gunakan, anda dapat menggunakan cara ini untuk mengatasinya.
URL Routing pada Framework Codeigniter
Dipublikasikan
7 Nov 2017

Penerapan URL Routing pada Framework Codeigniter

Artikel ini akan menjelaskan kepada anda terkait penerapan routing (route) pada framework Codeigniter.
Pengenalan Codeigniter
Dipublikasikan
6 Oct 2017

Pengenalan Codeigniter dari Struktur Folder, Fungsi, dan Instalasinya

Artikel ini ditujukan untuk anda yang baru saja memplajari Codeigniter, dimana artikel ini akan membahas struktur folder, fungsi, dan instalasinya.