People Innovation Excellence

Menghubungkan CodeIgniter dengan database IBM DB2 Express-C

Bermula dari pelajaran Current Populer IT 2 di Binus yang diajarkan oleh ko Michael Yoseph Ricky, S.Kom., MM (D3553) tersenyum lebar Dimana tugas akhir kami sebelum UAS adalah membuat projek website yang berisikan tutorial DB2 dalam Bahasa Indonesia. Websitenya boleh blog misal wordpress atau blogspot, ataupun boleh buat sendiri tapi dengan koneksi database DB2. main game

Terlintas pengen buat web blog sederhana dengan menggunakan database DB2. Projek ini terdiri dari 5 orang dalam 1 tim. Semua terdiri dari aku, candra, hale, tanto, adnan. Kami berencana membuat menggunakan framework codeigniter yang baru 2.1.0. Rencana awal aku yang merancang dasar dari kodingannya.belajar Candra katanya ingin bagian programmingnya. Jadinya aku hanya membuat desain dari layar putih menjadi menarik hehe… Disini juga aku berusahan mencari cara koneksi dengan DB2 nya. Hale bertugas membuat database nya menggunakan DB2. Tanto dan Adnan bertugas membuat kontennya.keren

Konsep blog kami dengan detail setiap pengunjung bisa melihat list pertemuan tentang tutorial DB2. Misal pertemuan 1, pertemuan 2, dst. Setiap pertemuan tentunya mempunyai deskripsi tentang apa dan di dalamnya terdapat kumpulan materi dari setiap pertemuan.musik Materi tersebut bisa dibaca langsung atau pun di download menggunakan tombol “Unduh Materi”. Untuk download, filenya memang ada misal .doc

Kurang lebih 2 hari aku merancang desainnya untuk blog sederhana, kira-kira begini tampilannya …

CodeIgniter dengan database IBM DB2

Halaman tentang situs

 CodeIgniter dengan database IBM DB2

Halaman list pertemuan

CodeIgniter dengan database IBM DB2

Jika list pertemuan diklik terdapat materi pembelajaran

CodeIgniter dengan database IBM DB2

Detail dari kontennya, terdapat unduh materi

Sangat sederhana tapi saya berharap elegan hehe. Meski tidak menggunakan template, cukup rapi juga ternyata haha tertawa. Langsung saja kita buka DB2 nya. DB2 yang kami pakai adalah versi 9.7.400.501. Hanya terdapat 2 tabel yang menyusun struktur website ini

tabel pertemuan
Tabel pertemuan

 

tabel materi
Tabel materi

 

Setelah tabel selesai dibuat, saya mendownload codeigniter dari websitenya.tersenyum lebar Pada saat itu yang paling baru adalah versi 2.1.0. Untuk driver yang diperlukan menggunakan DB2 Cataloged Connections – Updated by David Bates 05/19/2009Website untuk dokumentasi dari penggunaan driver terdapat di http://codeigniter.com/wiki/DB2_Database_Driver/revision/11023 .

Jadi karena saya menggunakan xampp versi 1.7.3, maka langsung saja saya edit configurasi drivernya di [project_anda]\application\config\database.php

1
2
3
4
5
$db['default']['username'] = "username";
$db['default']['password'] = "password";
$db['default']['database'] = "DBNAME";
$db['default']['dbdriver'] = "db2c";
$db['default']['options'] = array('i5_lib' => 'TSTDTA');

Setelah mendownload file db2c.zip tadi, pindahkan seluruh isi dari folder db2c nya ke system\database\drivers\ jadi lokasi sekarang adalah system\database\drivers\db2c\[isi dari file zipnya]

Kita perlu extension db2nya untuk php. Untuk extension yang dijalankan oleh xampp, saya lihat di http://stackoverflow.com/questions/2001210/connecting-to-db2-through-php . Dari jawaban Pascal MARTIN, dia menjawab “There is a recent version of some extensions .dll available from http://downloads.php.net/pierre/ ” langsung saja buka website pierre itu…tersenyum lebar

Saya download langsung versi php_ibm_db2-1.8.2-5.3-nts-vc6-x86.zip (2009-12-01 02:14 -0800)
MD5 (php_ibm_db2-1.8.2-5.3-nts-vc6-x86.zip) = 0d3438866a0e17de9b5a08e9a41f7c19

Setelah dapat, saya kopi kan ke \xampp\php\ext\ jadi nanti menjadi \xampp\php\ext\php_ibm_db2.dll . Untuk menambahkan extensi tersebut buka file php.ini di xampp\php. Tambahkan

1
extension=php_ibm_db2.dll

dibaris yang ada [PECL]. Terserah di bagian mana tapi jgn di kasi titik dua.

Restart apache kamu…. maka langsung terkoneksi dengan DB2 nya main game. Sisanya lakukan pengkodingan dari codeigniter seperti biasa menggunakan modelnya. Ohya beberapa active record dari codeigniter tidak support untuk db2 misalnya

1
$this->db->order_by(...);

Kebanyakan pakai langsung

1
$this->db->query(...);

Oh ya yg db->query itu hanya berlaku untuk SELECT statement, sedangkan untuk insertnya kami memakai db2_exec, berikut contoh model

1
2
3
4
5
6
function add_materi($id,$judul,$desc,$tanggal,$waktu,$materi,$pertemuan_id)
    {
        $conn = db2_connect('tuts_ori', '', '');
        db2_exec($conn, "INSERT INTO MATERI VALUES( '".$id."','".$judul."', '".$desc."','".$tanggal."','".$waktu."','".$materi."','".$pertemuan_id."')");
    }

Yak seperti itulah kodingan kami yang sangat sederhana. Untuk timeline pembuatan projek ini kira-kira begini :

  • Design web : aku (jefri) kurang lebih 20 jam kerja keren (sekitar aktual 2 hari pada jam kerja). Disini aku juga mempersiapkan fungsi dasar, pembagian model view controller agar dapat dilanjutkan oleh candra
  • Koding : candra, semalam katanya tertawa. Start mulai dari jam 9 malam (tepat malam sebelum pengumpulan projek) wkwk. Sempat tidur katanya jam 3 tapi bangun lagi jam 5 lanjut koding. Jadi jam 7.20 kami sudah masuk kuliah, pada saat mau berangkat kan demonya pake laptop aku tuh… ternyata DB nya gak bisa di export begitu aja, beda Schema (ya sejenis beda user di komp). Jadinya kami kuliah jam 8 wkwk gara2 baiki eror dan pindahin tabel manual. Total time untuk koding kira-kira 7-8 jam.
  • Database : hale, bbrp jam doank sepertinya
  • Konten : tanto dan adnan sent by email

Gud luck buat teman-teman yang akan mencobanya… Thanks to ko Michael Yoseph, jadi cukup mengerti DB2 dengan adanya projek ini menjulurkan lidah. Jadi belajar sedikit untuk sertifikasi IBM DB2 satu kelas yang akan diadakan tanggal 26 januari 2012 ini.

Penulis : Jefriyanto Guang

Tutorial ini re-published dari http://blog.jflinq.com/2012/01/18/menghubungkan-codeigniter-dengan-database-ibm-db2-express-c/

Terima kasih


Published at : Updated

Periksa Browser Anda

Check Your Browser

Situs ini tidak lagi mendukung penggunaan browser dengan teknologi tertinggal.

Apabila Anda melihat pesan ini, berarti Anda masih menggunakan browser Internet Explorer seri 8 / 7 / 6 / ...

Sebagai informasi, browser yang anda gunakan ini tidaklah aman dan tidak dapat menampilkan teknologi CSS terakhir yang dapat membuat sebuah situs tampil lebih baik. Bahkan Microsoft sebagai pembuatnya, telah merekomendasikan agar menggunakan browser yang lebih modern.

Untuk tampilan yang lebih baik, gunakan salah satu browser berikut. Download dan Install, seluruhnya gratis untuk digunakan.

We're Moving Forward.

This Site Is No Longer Supporting Out-of Date Browser.

If you are viewing this message, it means that you are currently using Internet Explorer 8 / 7 / 6 / below to access this site. FYI, it is unsafe and unable to render the latest CSS improvements. Even Microsoft, its creator, wants you to install more modern browser.

Best viewed with one of these browser instead. It is totally free.

  1. Google Chrome
  2. Mozilla Firefox
  3. Opera
  4. Internet Explorer 9
Close