Sebelum mulai membangun sebuah web dengan codeigniter baiknya kita melakukan
konfigurasi terlebih dulu. Tutorial ini merupakan kelanjutan dari tutorial
sebelumnya
pengenalan codeigniter. Sesuai dengan katanya, konfigurasi berarti
mengatur atau menyusun. Ada beberapa file yang menjadi fokus konfigurasi kita, yaitu:
- belajarcodeigniter
- application
- config
- autoload.php
- config.php
- database.php
- routes.php
- .htaccess
Pada autoload.php ada beberapa library yang biasa dijalankan otomatis.
//$autoload['libraries'] = array();awal
$autoload['libraries'] = array('database','session','form_validation');
Pada bagian array ketik library yang akan dijalankan otomatis. Biasanya yang
umum dijalankan adalah database, session, dan form_validation karena ketiganya
sangat sering digunakan oleh aplikasi.
Masih pada autoload.php ada beberapa helper yang biasa dijalankan otomatis.
//$autoload['helper'] = array();awal
$autoload['helper'] = array('url','form');
Helper yang biasa dijalankan otomatis adalah url dan form. Sesuai namanya
helper ini akan membantu urusan "url" dan "form".
#config.php
Dibagian ini kita perlu melakukan konfigurasi url utama aplikasi. Sedikit saya
jelaskan bahwa url utama ini sangat diperlukan untuk nantinya menemukan alamat
file seperti css.
//$config['base_url'] = '';awal
//$config['base_url'] = 'http://localhost/belajarcodeigniter/';absolut
url
//dinamis url
$config['base_url'] = ((isset($_SERVER['HTTPS']) &&
$_SERVER['HTTPS'] == "on") ? "https" : "http");
$config['base_url'] .= "://".$_SERVER['HTTP_HOST'];
$config['base_url'] .=
str_replace(basename($_SERVER['SCRIPT_NAME']),"",$_SERVER['SCRIPT_NAME']);
Pada konfigurasi url utama kita dapat memilih absolut url atau
dinamis url, saya menyarankan untuk memilih dinamis url.
Selanjutnya kita akan membuat url lebih bersih dengan menghilangkan index.php
(localhost/belajarcodeigniter/index.php/controler).
//$config['index_page'] = 'index.php';awal
$config['index_page'] = '';
Selanjutnya kita membuat file .htaccess di root folder
(belajarcodeigniter).
<IfModule mod_rewrite.c>
Options -Indexes
RewriteEngine On
RewriteCond $1 !^(index\\.php|resources|robots\\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?/$1 [L,QSA]
</IfModule>
#database.php
Sesuai dengan namanya, fungsinya untuk konfigurasi database.
$db['default'] = array(
'dsn'
=> '',
'hostname' =>
'localhost',
'username' =>
'root',
'password' => '',
'database' =>
'db_crud',
'dbdriver' =>
'mysqli',
'dbprefix' => '',
'pconnect' => FALSE,
'db_debug' => (ENVIRONMENT
!== 'production'),
'cache_on' => FALSE,
'cachedir' => '',
'char_set' => 'utf8',
'dbcollat' =>
'utf8_general_ci',
'swap_pre' => '',
'encrypt' => FALSE,
'compress' => FALSE,
'stricton' => FALSE,
'failover' => array(),
'save_queries' => TRUE
);
Seperti konfigurasi database dengan native PHP kita hanya perlu mendefenisikan
hostname, username, password, dan database.
#routes.php
File ini berfungsi menangani route aplikasi web kita, seperti default
controller.
//$route['default_controller'] = 'welcome';awal
$route['default_controller'] = 'home';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
Selanjutnya kita buat controller home pada folder controller.
<?php
//nama file: Home.php
defined('BASEPATH') OR exit('No direct script access allowed');
class Home 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('home');
}
}
Untuk pertama kali belajar anda boleh copas dari controller Welcome.php dan ubah
tulisan yang berwarna merah.
Selanjutnya kita buat sebuah view untuk web kita.
<?php
//nama file: home.php
defined('BASEPATH') OR exit('No direct script access allowed');
?>
<!DOCTYPE html>
<html>
<head>
<title>Belajar Codeigniter</title>
</head>
<body>
Selamat anda telah berhasil melakukan configurasi Codeigniter!
</body>
</html>
Selamat anda telah berhasil melakukan configurasi Codeigniter!
Catatan: Setelah tutorial ini berhasil anda dapat mengikuti tutorial selanjutnya.