codeigniter web framework

Pengaturan Database pada Framework CodeIgniter

Posted on

Database

Banyak sekali jenis database yang didukung oleh Framework CodeIgniter misalnya MySQL, PostGre SQL, Oracle dan lain sebagainya. Dukungan database dari CodeIgniter berupa penyediaan beberapa driver database yang sekaligus juga memiliki fungsi security, caching dan active record.

Connect ke Database

Agar dapat melakukan koneksi dengan database, ada beberapa konfigurasi yang harus dilakukan pada file database.php, file ini terletak di dalam folder application/config/database.php , perhatikan gambar berikut :

semarsoft config database.php

Listing code diatas terdapat pada file database.php, didalamnya menggunakan array multi dimensi Karena lebih simple dan dapat menyimpan lebih dari satu konfigurasi koneksi.

Cara untuk dapat mengkoneksikan database :

CodeIgniter memiliki file konfigurasi yang sangat memungkinkan Anda untuk menyimpan konfigurasi koneksi ke database (username, password, database dan lain-lain). File konfigurasi terletak di application/config/database.php.

Agar terhubung ke database ada beberapa cara yang dapat dilakukan diantarannya:

  1. Menambahkan Database Library sebagai Autoload Library
    Untuk terhubung ke database bisa dengan cara menambahkan database sebagai autoload library di file application/config/autoload.php.
    $autoload[‘libraries’] = array(“database”);
  2. Mengaktifkan Manual Dari Library Database
    Jika hanya halaman website yang memerlukan konektivitas database, maka untuk optimalisasi, lakukan koneksi ke database secara manual, dengan menambahkan baris kode di bawah ini pada tiap fungsi tempat yang membutuhkan koneksi database atau dalam konstruktor kelas untuk membuat database yang tersedia secara global di kelas.
    $this->load->database();

    Code diatas jika tidak berisikan informasi apapun pada parameter pertama maka akan menyambung pada group konfigurasi yang aktif. Untuk memilih kelompok tertentu dari file konfigurasi, dapat melakukan seperti hal berikut ini (berguna untuk aplikasi yang memiliki 2 database).

    $this->load->database(‘group_name’);

    Group_name adalah nama grup konfigurasi dari file konfigurasi Anda.Contoh penggunaannya :

    semarsoft config database multi.php

    Cara memanggilnya pada file model di sisi construct adalah :

    $this->db2 = $this->load->database('database_dua', TRUE);

    Perbedaan koneksi ke database 1 dan database 2, terletak pada $this->db atau $this->db2.

  3. Mengaktifkan Manual Dari Model
    Cara yang ketiga adalah mengaktifkan database pada saat loading model. Caranya dengan mengeset TRUE pada parameter ketiga load model. Contoh :
    $this->load->model(‘nama_model’,’ ’,TRUE);

CodeIgniter Model

Model pada CodeIgniter adalah sebuah kelas php yang berfungsi untuk menangani data. Kelas model di-extend ketika hendak menggunakan fitur database pada CodeIgniter saja. Semua file model harus diletakkan di dalam folder application/models. Untuk me-load model kita dapat menggunakan perintah berikut :

$this->load->model(‘nama_model’);

Jika sudah berhasil me-load sebuah model maka model tersebut akan menjadi sebuah property, dari property itulah akan dapat menggunakan semua fungsi yang ada di dalam file model.

Melakukan Query pada Database

Query dilakukan untuk dapat mengambil data pada database.

$query=$this->db->query(‘Query_SQL’);

Query diatas belum menghasilkan data apapun. Keluarannya hanya berupa Object(true) atau false. Ketika keluarannya False berarti query yang dilakukan gagal. Tetapi jika true atau mengembalikan sebuah object maka query yang dilakukan telah berhasil.

Dari object tersebut (variable $query, mengacu pada contoh diatas) dapat menggambil data yang diinginkan. Contohnya :

$query=$this->db->query(‘SELECT nama, judul, email FROM tabel’);

foreach ($query->result() as row)
{
echo $row->nama;
echo $row->judul;
echo $row->email;
}

Leave a Reply