Konfigurasi CodeIgniter


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
    #autoload.php
    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.
    • belajarcodeigniter
      • application
        • controller
          • Home.php
    <?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.
    • belajarcodeigniter
      • application
        • view
          • home.php
    <?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.

    Popular posts from this blog

    Cara Menggunakan Template Admin LTE Sebagai Template Web Dinamis

    Aplikasi CRUD menggunakan Template Admin LTE

    Cara membuat Link ke Halaman lain dan Link ke bagian Halaman