Mengenal dan Membuat Program dengan Framework Codeigniter

Apa itu codeigniter? Codeigniter adalah salah satu framework PHP yang gunanya untuk mempermudah proses pembuatan sebuah website, mengatur pengelolaan file website tersebut dan memaksimalkan kodingan kita. Codeigniter banyak sekali digunakan dalam website-website indonesia.

Web-web Indonesia yang menggunakan Codeigniter

Web-web Indonesia yang menggunakan Codeigniter

Nah, sekarang kita akan mempelajari bagaimana memulai/membuat web sederhana dengan memaksimalkan fungsi-fungsi yang telah disediakan dalam codeigniter. Let’s see🙂

Langkah-langkah mempersiapkan codeigniter

  1. Download codeigniter terbaru di http://ellislab.com/codeigniter
  2. Extract dan kopikan ke folder htdocs
  3. Untuk mempermudah, folder codeigniternya boleh direname, saya rename jadi latihan_ci, ini struktur folder latihan_cistruktur folder codeigniter

Ini struktur folder latihan_ci/application

struktur folder application

Kebanyakan kodingan yang kita buat akan disimpan di dalam tiga folder ini, controllers, models dan views.

Sekarang kita akan mulai untuk membuat script dengan menggunakan codeigniter, disini saya akan membuat skrip untuk create, edit, delete artikel. Di bawah ini adalah tampilan yang muncul saat pertama kali membuka url http://localhost/latihan_ci/:

welcome codeigniter

Skrip untuk tampilan ini berada di C:\xampp\htdocs\latihan_ci\application\controllers, dengan nama file welcome.php

controller welcome

Membuat Program dengan Codeigniter

Sebelumnya kita atur terlebih dahulu konfigurasi databasenya, di latihan_ci/application/config/database.php, dan ubah bagian ini (sesuaikan dengan kondisi pc dan nama database):

$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'root';
$db['default']['password'] = '';
$db['default']['database'] = 'project'; //nama databasenya

Pertama-tama, kita akan membuat skrip untuk menampilkan artikel. Buat file baru dengan nama model_artikel.php di dalam direktori latihan_ci/application/models


<?php
class Model_artikel extends CI_Model {
function __construct() {
parent::__construct();
}

function get() {
return $this->db->get('artikel')->result_array();
}
}

Skrip untuk mengambil data artikel berada di line 8. Singkat ya cuma 1 baris?😀 Inilah salah satu kelebihan codeigniter, jika dibandingkan dengan skrip php biasa. Untuk mengambil data dari tabel saja, mungkin bisa 1-3 baris (bisa dibandingkan dengan skrip di Membuat Program sederhana dengan PHP & MySQL)

Langkah selanjutnya, buat file baru dengan nama artikel.php di dalam direktori latihan_ci/application/controllers


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

class Artikel extends CI_Controller {

public function index(){
 $this->load->model('model_artikel');
 $data['artikel'] = $this->model_artikel->get();
 $this->load->view('list',$data);
 }

}

  • Line 5, adalah nama fungsi baru di controller artikel
  • Line 6, skrip untuk meload model ‘artikel_model’
  • Line 7, mengambil data artikel dengan memanggil fungsi get() pada model artikel_model
  • Line 8, load view ‘list’ dengan menyertakan variabel $data

Selanjutnya, buat file baru dengan nama list.php di dalam direktori latihan_ci/application/views


<html>
 <head>
 <title>Artikel</title>
 </head>
 <body>
 <h3>Daftar Artikel</h3>
 <table cellpadding="5" cellspacing="5">
 <tr>
 <th>Judul Artikel</th>
 <th>Isi Artikel</th>
 <th>Waktu Posting</th>
 <tr>
 <?php
 foreach($artikel as $artikel){ ?>
 <tr>
 <td><?=$artikel['judul']?></td>
 <td><?=$artikel['isi']?></td>
 <td><?=$artikel['waktu_posting']?></td>
 </tr>
 <?php }
 ?>
 </table>
 </body>
</html>

Nah sekarang coba buka url : http://localhost/latihan_ci/index.php/artikel maka akan muncul tampilan seperti ini:

Tampilan Artikel

Tampilan Artikel

Untuk membuat skrip manipulasi data, seperti insert, edit dan delete, kita juga bisa menggunakan fungsi yang disediakan oleh codeigniter:

Contoh Skrip Insert

function add(){
$data = array('judul' => 'Hello World!',
              'isi'   => 'ini data pertama yang saya masukkan menggunakan codeigniter');
$this->db->insert('artikel', $data);
}

$this->db->insert(parameter1,parameter2);
*parameter1 => nama tabel
*parameter2 => data berupa array / objek

Contoh Skrip Edit

function edit(){
$data = array('judul' => 'Hello Indonesia!');
$this->db->where('id_artikel', 1);
$this->db->update('artikel', $data);
}

$this->db->update(parameter1,parameter2);
*parameter1 => nama tabel
*parameter2 => data yang diubah berupa array / objek

Contoh Skrip Delete

function delete(){
$this->db->where('id_artikel', 1); //menghapus artikel yg id_artikel nya bernilai 1
$this->db->delete('artikel');
}

Ketiga fungsi ini ditambahkan di controller artikel yang sebelumnya sudah kita buat. Sekian postingan kali ini, agak pusing yah? Hehe kalo codeigniter emang agak susah kalo dijelasin, lebih baik kalo ngulik-ngulik sendiri, tapi ngga apa-apa deh buat perkenalan ya🙂

5 thoughts on “Mengenal dan Membuat Program dengan Framework Codeigniter

  1. paul says:

    A PHP Error was encountered

    Severity: Notice

    Message: Undefined property: Artikel::$db

    Filename: core/Model.php

    Line Number: 51

    Fatal error: Call to a member function get() on a non-object in E:\XAMPP\htdocs\CI\application\models\model_artikel.php on line 8

    • Desi Tiffani says:

      sepertinya karna belum load helper database, coba buka file application/config/autoload.php
      dan ubah bagian ini $autoload[‘libraries’] = array();
      dengan ini $autoload[‘libraries’] = array(‘database’,’session’);

    • Desi Tiffani says:

      bisa di controller yg manggil model tsb, bisa juga di modelnya langsung.
      contohnya:
      function edit(){
      $data = array(‘judul’ => ‘Hello Indonesia!’);
      $where = array(‘id_artikel’ => 1, ‘judul’ => ‘Artikel Testing’);
      $this->db->where($where);
      $this->db->update(‘artikel’, $data);
      }

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s