Persiapan Belajar Codeigniter – Tutorial CodeIgniter 3

Persiapan Belajar Codeigniter 3

CodeIgniter adalah kerangka kerja (framework) PHP yang kuat dengan footprint yang sangat kecil, dibangun untuk pengembang yang membutuhkan toolkit sederhana dan elegan untuk membuat aplikasi web dengan fitur bawaan yang cukup lengkap. CodeIgniter dibuat oleh EllisLab, dan sekarang menjadi proyek Institut Teknologi British Columbia.

Tutorial ini disiapkan untuk pengembang yang ingin mempelajari seni mengembangkan situs web menggunakan CodeIgniter (CI). Tutorial ini diharapkan bisa memberikan pemahaman lengkap tentang framework CI3 ini.

Sebelum Kita lanjut, saya anggap bahwa teman-teman sudah mengenal HTML, Core PHP, dan Advance PHP. Pada tutorial kali ini kita akan menggunakan CodeIgniter versi 3.1.11

CI adalah framework pengembangan aplikasi, yang dapat digunakan untuk mengembangkan website, menggunakan PHP. Ini adalah Framework Open Source yang memiliki banyak fitur, yang akan meningkatkan kecepatan pengembangan situs web.

Jika teman-teman sudah menguasai PHP dengan baik, maka CI akan membuat tugas kita lebih mudah. CI memiliki beberapa Library dan Helper. Dengan menggunakan CI, teman-teman akan menghemat banyak waktu dibandingkan mengembangkan situs web dari awal. Tidak hanya itu, website yang dibangun di CodeIgniter juga aman, karena memiliki kemampuan untuk mencegah berbagai serangan yang terjadi melalui website.

Prasyarat:

  1. HTML
  2. PHP
  3. Object Oriented Programming (OOP) pada PHP
  4. SQL

Aplikasi:

  1. Text Editor (Rekomendasi: VSCode)
  2. Web Browser (Chrome, Firefox, dll)
  3. Web Server (Rekomendasi: XAMPP)

Instalasi:

  1. Download CodeIgniter 3
    download ci3
  2. Extract file CI3 yang sudah didownload
    extract file zip
  3. Pindahkan folder yang sudah di-ekstrak ke folder root (pada XAMPP: htdocs) dan ganti nama sesuai keinginan (misalnya: belajar_ci3)
    nama disarankan menggunakan huruf kecil semua dan apabila harus menggunakan lebih dari 1 kata pisahkan dengan underscore ( _ )
    lokasi project
  4. Test akses project-nya (pada XAMPP: localhost/belajar_ci3)
    akses project
    Jika sudah tampil halaman Welcome to CodeIgniter maka project CI3 sudah siap untuk dilanjutkan

Konfigurasi CodeIgniter

  1. Ubah base_url dan kosongkan nilai index_page pada file config.php di folder application dalam subfolder config
     // application/config/config.php $config['base_url']   = 'http://localhost/belajar_ci3/'; $config['index_page'] = ''; // kode lainnya … 

     

    Penjelasan:

    • base_url — sesuaikan dengan domain project teman-teman
    • index_page dibuat kosong agar alamat lengkap sebuah halaman tidak harus selalu menyertakan index.php
  2. Buat file dengan nama .htaccess di folder root (folder project)
     RewriteEngine on Options -Indexes RewriteCond $1 !^(index.php|resources|robots.txt) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php/$1 [L] # RewriteRule ^(.*)$ index.php/$1 [L,QSA] 
  3. Ubah nilai file database.php di folder application dalam subfolder config
     <?php defined('BASEPATH') OR exit('No direct script access allowed'); $active_group = 'default'; $query_builder = TRUE; $db['default'] = array( 'dsn' => '', 'hostname' => 'localhost', 'username' => 'root', 'password' => '', 'database' => 'belajar_ci3', '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 ); 

    Penjelasan:

    • hostname — sesuaikan dengan host database teman-teman
    • username — sesuaikan dengan username database teman-teman
    • password — sesuaikan dengan password database teman-teman
    • database — sesuaikan dengan nama database teman-teman
  4. Buat database menggunakan phpMyAdmin atau tools yang teman-teman biasa gunakan.
    Jika teman-teman menggunakan phpMyAdmin bisa mengikuti langkah ini

     

    • Akses localhost/phpmyadmin kemudian masuk ke tab database
      phpmyadmin
    • Buat database sesuai dengan pengaturan di langkah 3 tadi
      buat database belajar_ci3
    • Buat tabel tb_investasi,
      query membuat tabel
      Klik tab SQL(1), pastikan posisinya sedang berada di database yang sudah kita buat(2), masukkan perintah SQL(3), kirim(4)
START TRANSACTION;

CREATE TABLE `tb_investasi` (
  `id` int(11) NOT NULL,
  `nama_perusahaan` varchar(255) NOT NULL,
  `no_dan_tgl` varchar(255) NOT NULL,
  `bidang_usaha` varchar(255) NOT NULL,
  `alamat_kantor` varchar(255) NOT NULL,
  `kode_lokasi` int(5) DEFAULT NULL,
  `kode_negara` int(5) NOT NULL DEFAULT 1,
  `investasi_tambahan` decimal(20,0) NOT NULL DEFAULT 0,
  `investasi_total` decimal(20,0) NOT NULL DEFAULT 0,
  `tki` int(11) NOT NULL DEFAULT 0,
  `tka` int(11) NOT NULL DEFAULT 0,
  `mata_uang` enum('usd','rp') NOT NULL
);

CREATE TABLE `tb_lokasi` (
  `id` int(5) NOT NULL,
  `nama_lokasi` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL
);

INSERT INTO `tb_lokasi` (`id`, `nama_lokasi`) VALUES
(1, 'Provinsi Riau'),
(2, 'Kota Pekanbaru'),
(3, 'Kabupaten Bengkalis'),
(4, 'Kabupaten Kampar');

CREATE TABLE `tb_negara` (
  `id` int(5) NOT NULL,
  `nama_negara` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL
);

INSERT INTO `tb_negara` (`id`, `nama_negara`) VALUES
(1, 'Indonesia'),
(2, 'Jepang'),
(3, 'Amerika'),
(4, 'Korea'),
(5, 'Singapura');

CREATE TABLE `users` (
  `user_id` int(11) UNSIGNED NOT NULL,
  `username` varchar(35) NOT NULL,
  `email` varchar(128) DEFAULT NULL,
  `fullname` varchar(128) NOT NULL,
  `password` varchar(256) NOT NULL,
  `image` varchar(255) DEFAULT NULL,
  `is_active` enum('0','1') NOT NULL DEFAULT '0'
);

ALTER TABLE `tb_investasi`
  ADD PRIMARY KEY (`id`),
  ADD KEY `kode_lokasi` (`kode_lokasi`),
  ADD KEY `kode_negara` (`kode_negara`);

ALTER TABLE `tb_lokasi`
  ADD PRIMARY KEY (`id`);

ALTER TABLE `tb_negara`
  ADD PRIMARY KEY (`id`);

ALTER TABLE `users`
  ADD PRIMARY KEY (`user_id`);

ALTER TABLE `tb_investasi`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;

ALTER TABLE `tb_lokasi`
  MODIFY `id` int(5) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;

ALTER TABLE `tb_negara`
  MODIFY `id` int(5) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;

ALTER TABLE `users`
  MODIFY `user_id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;

ALTER TABLE `tb_investasi`
  ADD CONSTRAINT `tb_investasi_ibfk_1` FOREIGN KEY (`kode_lokasi`) REFERENCES `tb_lokasi` (`id`) ON UPDATE CASCADE,
  ADD CONSTRAINT `tb_investasi_ibfk_2` FOREIGN KEY (`kode_negara`) REFERENCES `tb_negara` (`id`) ON UPDATE CASCADE;

COMMIT;

About the Author

Assalamualaikum. Saya Ahmad Mazlan, Programmer muda yang masih belajar dan ingin segera berbagi tentang dunia programming. Siapa pun bisa membuat program, yang mereka butuhkan hanya belajar. Semua bisa menjadi Programmer selama memiliki keinginan yang kuat untuk belajar.

Tinggalkan Balasan