• Tidak ada hasil yang ditemukan

RekWeb CI Modul 2

N/A
N/A
Protected

Academic year: 2021

Membagikan "RekWeb CI Modul 2"

Copied!
17
0
0

Teks penuh

(1)

CodeIgniter

CodeIgniter

Framework

Framework

IT507 - Rekayasa Web

IT507 - Rekayasa Web

CodeIgniter (CI) adalah suatu framework pengembangan aplikasi web

CodeIgniter (CI) adalah suatu framework pengembangan aplikasi web berbasisberbasis PHP. CI menyediakan banyak library sehingga

PHP. CI menyediakan banyak library sehingga memungkinkan mengembangkanmemungkinkan mengembangkan aplikasi dengan lebih cepat. Salah satu keunggulan CI dibanding framework lain aplikasi dengan lebih cepat. Salah satu keunggulan CI dibanding framework lain adalah kesederhanaan penggunaannya dan kecepatan eksekusinya. P

adalah kesederhanaan penggunaannya dan kecepatan eksekusinya. P adaada modul 2 ini

modul 2 ini akan mengenalkan pembaca kepada pengembangan aplikasi yangakan mengenalkan pembaca kepada pengembangan aplikasi yang menggunakan framework CI, khususnya proses retrive, insert, update, dan menggunakan framework CI, khususnya proses retrive, insert, update, dan delete data dari database.

delete data dari database.

Modul

Modul

2

2

Candra Utama Candra Utama Teknik Informatika UNPAS Teknik Informatika UNPAS

Candra Utama

Candra Utama

Digitally signed by Candra UtamaDigitally signed by Candra UtamaDN: cn=Candra Utama, o, ou,DN: cn=Candra Utama, o, ou, email=kulia

email=kuliah@candrautah@candrautama.com, ma.com, c=IDc=ID Date: 2011.12.29 15:09:03 +07'00' Date: 2011.12.29 15:09:03 +07'00'

(2)

CodeIgniter Framework

CodeIgniter Framework

Modul 2

Modul 2

Materi

Materi Manipulasi data pada database,Manipulasi data pada database, Database class di CI,

Database class di CI, Active Record. Active Record. Target

Target Mampu membuat aplikasi pengelolaan dan Mampu membuat aplikasi pengelolaan dan manipulasi data.manipulasi data. Pre requisite

Pre requisite Mengerti materi di Modul 1Mengerti materi di Modul 1 Menguasai query DDL dan DML. Menguasai query DDL dan DML.

(3)

A.

A. Manipulasi Data pada Database

Manipulasi Data pada Database

Suatu aplikasi berbasis web,

Suatu aplikasi berbasis web, umumnya menggunaumumnya menggunakan database sebagai mediakan database sebagai media

penyimpanan data. CodeIgniter menyediakan banyak fungsi yang mendukung manipulasi data penyimpanan data. CodeIgniter menyediakan banyak fungsi yang mendukung manipulasi data pada database, baik menggunakan metode tradisional maupun pola

pada database, baik menggunakan metode tradisional maupun pola Acitve Record  Acitve Record ..

Active record adalah suatu metode untuk mengakses data pada database relasional, Active record adalah suatu metode untuk mengakses data pada database relasional, suatu tabel dan view dipetakan menjadi suatu class. Metode

suatu tabel dan view dipetakan menjadi suatu class. Metode ini biasanya digunakan olehini biasanya digunakan olehtoolstools ORM (Object Relational Mapping). Beberapa framework PHP sudah menyertakan modul ORM ORM (Object Relational Mapping). Beberapa framework PHP sudah menyertakan modul ORM yang mengimplemen

yang mengimplementasikan pola Active Record yang tasikan pola Active Record yang mendukung relationship dan validasi,mendukung relationship dan validasi, contohnya Symfony, CakePHP dan Yii.

contohnya Symfony, CakePHP dan Yii.

Pada CodeIgniter terdapat fitur untuk

Pada CodeIgniter terdapat fitur untuk membangkitkamembangkitkannQuery Query yang bernamayang bernama “ActiveRecord

“ActiveRecord”, tapi ”, tapi CI tidak CI tidak menerapkan pola Active Record yang sebenarnya, hanya sebagaimenerapkan pola Active Record yang sebenarnya, hanya sebagai pembangkit query saja agar aplikasi

pembangkit query saja agar aplikasi yang dibangun dapat mendukung multi yang dibangun dapat mendukung multi databadatabase. Untukse. Untuk mengimplementasikan fungsi Active Record yang sebenarnya pada CI dapat menggunakan mengimplementasikan fungsi Active Record yang sebenarnya pada CI dapat menggunakan library tersendiri seperti

library tersendiri seperti CodeIgniter DataMaCodeIgniter DataMapper atau CodeIgniter Gas pper atau CodeIgniter Gas ORM.ORM. 1.

1. CodeIgniter Database ClassCodeIgniter Database Class

Agar aplikasi yang dibangun dapat terkoneksi dengan database, harus tentukan dulu Agar aplikasi yang dibangun dapat terkoneksi dengan database, harus tentukan dulu parameter koneksi database pada file konfigurasi yang sudah dibahas pada Modul 1. Setelah parameter koneksi database pada file konfigurasi yang sudah dibahas pada Modul 1. Setelah semua parameter koneksi ditentukan, gunakan script di

semua parameter koneksi ditentukan, gunakan script di bawah ini untuk bawah ini untuk menggunamenggunakankan Database Class CodeIgniter :

Database Class CodeIgniter :

Setelah Database Class dipanggil menggunakan script di atas,

Setelah Database Class dipanggil menggunakan script di atas, maka kita dapat mengeksekusimaka kita dapat mengeksekusi query pada database tersebut.

query pada database tersebut. Jika setiap

Jika setiap halaman aplikasi yang dibangun membutukan koneksi ke database, sebaiknyahalaman aplikasi yang dibangun membutukan koneksi ke database, sebaiknya Database Class dibuat

Database Class dibuatautoload autoload saja dengan menambahkan library “database” padasaja dengan menambahkan library “database” pada konfigurasi

konfigurasiautoload*autoload*. Seperti contoh di bawah ini:. Seperti contoh di bawah ini:

*Cara konfigurasi file autoload dapat dilihat pada Modul 1 point

*Cara konfigurasi file autoload dapat dilihat pada Modul 1 point B.4.b.B.4.b. 2.

2. Eksekusi QueryEksekusi Query

Terdapat dua cara untuk mengeksekusi query, yaitu dengan metode “tradisional” dan Terdapat dua cara untuk mengeksekusi query, yaitu dengan metode “tradisional” dan dengan fitur Active Record.

dengan fitur Active Record. a.

a. TradisionalTradisional

Sintaks query dieksekusi oleh method

Sintaks query dieksekusi oleh method query()query()pada class Database, intansiasi classpada class Database, intansiasi class Database tersebut (point A.1.) menjadi object

Database tersebut (point A.1.) menjadi object dbdb. Berikut . Berikut contohnya:contohnya:

Sintaks query lengkap

Sintaks query lengkapselect data di atas dimasukkan ke method query(). Hasilselect data di atas dimasukkan ke method query(). Hasil eksekusinya dapat diolah berupa

eksekusinya dapat diolah berupa objectobject atauatau arrayarray, sesuai yang kita tentukan. Lihat, sesuai yang kita tentukan. Lihat point A.3.

(4)

b.

b. Active RecordActive Record

Dengan menggunakan Active Record, developer dapat memanipulasi data dengan Dengan menggunakan Active Record, developer dapat memanipulasi data dengan sederhana dan script y

sederhana dan script yang seminimal mungkin. CodeIgniter men-ang seminimal mungkin. CodeIgniter men-generategeneratesintaks querysintaks query berdasar method Active Record yang developer panggil, dan juga query yang

di-berdasar method Active Record yang developer panggil, dan juga query yang di-generategenerate dipastikan didukung oleh DBMS

dipastikan didukung oleh DBMS yang digunakan. Contohnya queryyang digunakan. Contohnya queryselect select yangyang menggunakan

menggunakan limitlimit antara MySQL dan Oracle berbeda, Active Record otomatisantara MySQL dan Oracle berbeda, Active Record otomatis menyesuaikan. Berikut contohnya:

menyesuaikan. Berikut contohnya:

Dengan menggunakan method

Dengan menggunakan method get()get() Active Record, akan menghasilkan sintaks queryActive Record, akan menghasilkan sintaks query select 

select terhadap tabel yang ditentukan pada terhadap tabel yang ditentukan pada parameteparameter methodr method get()get() tersebut.tersebut. Berikut beberapa method Active Record yang

Berikut beberapa method Active Record yang biasanya dipakai:biasanya dipakai:

• • Select()Select() • • From()From() • • Where()Where() • • Get_where()Get_where() • • Like()Like() • • Limit()Limit() • • Order_by()Order_by() • • Insert()Insert() • • Update()Update() • • Delete()Delete()

Lebih jelas mengenai cara penggunaan method-method Active Record dapat dilihat pada Lebih jelas mengenai cara penggunaan method-method Active Record dapat dilihat pada user_guide

user_guidemenu Database Class.menu Database Class. Hasil eksekusi query

Hasil eksekusi query (tradisional maupun Active Record) yang pada contoh disimpan pada(tradisional maupun Active Record) yang pada contoh disimpan pada variabel

variabel $query$query,, selalu bertipe objectselalu bertipe object..

Mengolah hasil query dapat dilihat pada point A.3. berikut ini. Mengolah hasil query dapat dilihat pada point A.3. berikut ini.

(5)

3.

3. Mengambil Hasil QueryMengambil Hasil Query Terdapat dua tipe

Terdapat dua tipe queryquery result setresult set yang dapat diolah dari hasil eksekusi query, yaituyang dapat diolah dari hasil eksekusi query, yaitu bertipe

bertipe objectobject dan bertipedan bertipe arrayarray.. a.

a. Result set tipe ObjectResult set tipe Object Field-field hasil query

Field-field hasil queryselect select menjadimenjadi propertiproperti pada suatupada suatu objectobject. Kita dapat. Kita dapat menggunakan method

menggunakan method result()result()pada variabel penampung hasil query, pada variabel penampung hasil query, pada contohpada contoh sebelumnya

sebelumnya $query$query. Setiap method. Setiap method result()result()dipanggil maka akan mengembalikandipanggil maka akan mengembalikan 1 baris1 baris

record 

record datadata bertipe object, dengan properti-properti yang merupakan nama field hasilbertipe object, dengan properti-properti yang merupakan nama field hasil

query. Berikut

query. Berikut contohnya:contohnya:

Foreach

Foreachdigunakan untuk menyusuri hasil digunakan untuk menyusuri hasil query, mulai dari query, mulai dari record pertama sampairecord pertama sampai terakhir.

terakhir. b.

b. Result set tipe ArrayResult set tipe Array

Field-field hasil query

Field-field hasil queryselect select menjadimenjadi indexindex pada suatu variabelpada suatu variabel arrayarray. Kita dapat. Kita dapat menggunakan method

menggunakan method result_array()result_array()pada variabel penampung hasil query, pada contohpada variabel penampung hasil query, pada contoh sebelumnya

sebelumnya $query$query.. Setiap methodSetiap method result_array()result_array()dipanggil maka akan mengembalikandipanggil maka akan mengembalikan 11 baris

barisrecord record datadata bertipe array, dengan index-index yang merupakan nama field bertipe array, dengan index-index yang merupakan nama field hasilhasil

query. Berikut

query. Berikut contohnya:contohnya:

Foreach

Foreachdigunakan untuk menyusuri hasil query, mulai dari digunakan untuk menyusuri hasil query, mulai dari record pertama samparecord pertama sampaii terakhir.

terakhir.

Developer bebas menentukan tipe

Developer bebas menentukan tiperesult set result set sesuai kebutuhan. Tipesesuai kebutuhan. Tipe arrayarray biasanyabiasanya cocok jika nama field dinamis tergantung kondisi tertentu yang juga dinamis, karena lebih cocok jika nama field dinamis tergantung kondisi tertentu yang juga dinamis, karena lebih mudah memanipulasi nama index array dibanding properti

(6)

B.

B. Latihan

Latihan

Latihan di Modul 2

Latihan di Modul 2 ini akan melanjutkan studi kasus pada Modul 1, ini akan melanjutkan studi kasus pada Modul 1, yaitu pengelolaanyaitu pengelolaan data Buku. Diketahui atribut data buku

data Buku. Diketahui atribut data buku sebagai berikut:sebagai berikut: Field

Field Tipe Tipe Data Data UkuranUkuran ID_Buku

ID_Buku Integer Integer 8, 8, auto auto incrementincrement Judul

Judul Varchar Varchar 100100

Pengarang

Pengarang Varchar Varchar 150150 Kategori

Kategori Varchar Varchar 1010

Selanjutnya ikuti langkah-langkah berikut: Selanjutnya ikuti langkah-langkah berikut: 1.

1. Buat DatabaseBuat Database

Bukalah phpmyadmin melalui browser,

Bukalah phpmyadmin melalui browser, http://localhost/phpmyadminhttp://localhost/phpmyadmin.. KemudianKemudian buatlah database baru dengan nama

buatlah database baru dengan nama buku_NRPbuku_NRP. Contoh:. Contoh: buku_123040024buku_123040024.. 2.

2. Import struktur Tabel BukuImport struktur Tabel Buku Download file

Download file mst_buku.sqlmst_buku.sql dari modul online, kemudian import ke database yangdari modul online, kemudian import ke database yang sudah dibuat sebelumnya. Sehingga seperti contoh

sudah dibuat sebelumnya. Sehingga seperti contoh berikut:berikut:

Gambar B.2. Struktur Tabel mst_buku Gambar B.2. Struktur Tabel mst_buku 3.

3. Konfigurasi Koneksi DatabaseKonfigurasi Koneksi Database Masuklah ke direktori

Masuklah ke direktori /application/config/application/config, lalu buka file, lalu buka file database.phpdatabase.php. Tentukan. Tentukan hostname, username, password, dan nama database. Contoh:

hostname, username, password, dan nama database. Contoh:

Gambar B.3. Konfigurasi Koneksi

Gambar B.3. Konfigurasi Koneksi DatabaseDatabase Pada kuliah ini username yang digunakan untuk koneksi ke

Pada kuliah ini username yang digunakan untuk koneksi ke DBMS MySQL adalahDBMS MySQL adalahrootroot.. Jika pada pembangunan aplikasi yang sebenarnya,

Jika pada pembangunan aplikasi yang sebenarnya, sangat disarankansangat disarankantidak memakai usertidak memakai user root

root untuk koneksi suatu aplikasi.untuk koneksi suatu aplikasi. Buatlah user spesifik yang memiliki hak akses terhadapBuatlah user spesifik yang memiliki hak akses terhadap database yang spesifik pula

(7)

4.

4. Konfigurasi AutoloadKonfigurasi Autoload Masuklah ke direktori

Masuklah ke direktori /application/config/application/config, lalu buka file, lalu buka file autoload.phpautoload.php. Tambahkan. Tambahkan library database pada konfigurasi autoload. Seperti contoh berikut:

library database pada konfigurasi autoload. Seperti contoh berikut:

Gambar B.4. Konfigurasi Autoload Library

Gambar B.4. Konfigurasi Autoload Library DatabaseDatabase 5.

5. Buat model BukuBuat model Buku

Buatlah sebuah file menggunakan editor PHP, ketikkan script model Buku di

Buatlah sebuah file menggunakan editor PHP, ketikkan script model Buku di bawah ini:bawah ini:

Script bersambung ke

(8)

Simpan file tersebut di direktori kerja Anda, pada folder :

Simpan file tersebut di direktori kerja Anda, pada folder : applicationapplication//modelsmodels// Beri nama file :

Beri nama file : buku_m.phpbuku_m.php

Penjelasan: Penjelasan:

• Nama class harus diawali huruf Nama class harus diawali huruf kapital.kapital. •

• Semua model yang dibuat harus turunan dari model CI Semua model yang dibuat harus turunan dari model CI ((CI_ModelCI_Model)) •

• Karena tidak ada aturan Karena tidak ada aturan penamaapenamaan model pada n model pada CodeIgniter, disarankan beri ciri-ciri diCodeIgniter, disarankan beri ciri-ciri di

nama class yang menandakan bahwa class tersebut adalah model, untuk memudahkan nama class yang menandakan bahwa class tersebut adalah model, untuk memudahkan proses

prosesdebugingdebuging. Contoh di atas. Contoh di atas _m _m..

• Lebih detail mengenai model :Lebih detail mengenai model : user_guide/general/models.htmluser_guide/general/models.html

• Method yang akan berfungsi melakukan queryMethod yang akan berfungsi melakukan queryselect select data.data. •

• Terdapat 4 parameterTerdapat 4 parameteroptional optional sebagai input bagi method, yaitusebagai input bagi method, yaitu

1)

1) $criteria$criteria. Berfungsi sebagai kriteria di query, “ where 1=1 and ... ”. Berfungsi sebagai kriteria di query, “ where 1=1 and ... ” 2)

2) $order$order. Berfungsi sebagai. Berfungsi sebagaiorderingorderingdi query, “ Judul ASC, Pengarang DESC ... “di query, “ Judul ASC, Pengarang DESC ... “ 3)

3) $limit$limit. Berfungsi sebagai angka limit (batas record) di query.. Berfungsi sebagai angka limit (batas record) di query. 4)

4) $offset$offset. Berfungsi sebagai angka offset (record awal) di query.. Berfungsi sebagai angka offset (record awal) di query.

• Active Record untuk mendefinisikan queryActive Record untuk mendefinisikan queryselect select data.data. •

(9)

• JikaJikaorderingorderingditentukan, maka gunakan Active Recordditentukan, maka gunakan Active Record order_by()order_by().. •

• Misal variabelMisal variabel $order$orderberisi “berisi “JudulJudul” tanpa ” tanpa didefinisikan arah pengurutannya (ASC ataudidefinisikan arah pengurutannya (ASC atau

DESC), maka Active Record akan otomatis menambahkan ASC. Script yang di-generate: DESC), maka Active Record akan otomatis menambahkan ASC. Script yang di-generate:

• Query yang sudah Query yang sudah didefinisikan pada Active Record, dieksekusi dengan methoddidefinisikan pada Active Record, dieksekusi dengan method get()get() •

• Hasil eksekusi query disimpan ke variabelHasil eksekusi query disimpan ke variabel $query$query, untuk diolah , untuk diolah kemudian.kemudian.

6.

6. Modifikasi controller BukuModifikasi controller Buku

Bukalah file controller Buku yang sudah Anda buat minggu lalu,

Bukalah file controller Buku yang sudah Anda buat minggu lalu, kemudian lakukankemudian lakukan modifikasi berikut ini:

modifikasi berikut ini: a.

a. Load helper URL dan Load helper URL dan model Buku_mmodel Buku_m Pada

Padaconstructor,constructor, tambahkatambahkan script n script untukuntukload load helper URL dan model Buku_m.helper URL dan model Buku_m. Sehingga seperti berikut:

Sehingga seperti berikut:

Penjelasan: Penjelasan:

• Helper URL digunakan di beberapa bagian pada controllerHelper URL digunakan di beberapa bagian pada controller BukuBuku, contohnya function, contohnya function

redirect()

redirect()..

• ModelModel Buku_mBuku_myang sudah dibuat yang sudah dibuat harus dipanggil (instansiasi) agar dapat digunakanharus dipanggil (instansiasi) agar dapat digunakan

pada controller. Instansiasi model Buku_m, akan menjadi properti di class controller pada controller. Instansiasi model Buku_m, akan menjadi properti di class controller Buku yang namanya sama dengan nama model, yaitu

(10)

b.

b. Modifikasi method index()Modifikasi method index() Pada Modul 1 method

Pada Modul 1 method indexindexberfungsi sebagai function default berfungsi sebagai function default yang memanggilyang memanggil method

method add_new()add_new()jika pada URL tidak didefinisikan method yang dipanggil. Pada Moduljika pada URL tidak didefinisikan method yang dipanggil. Pada Modul 2 ini modifikasi method

2 ini modifikasi method indexindexyang dimaksudkan berfungsi mengambil data buku dariyang dimaksudkan berfungsi mengambil data buku dari database kemu

database kemudian menampilkan di viedian menampilkan di view. w. Berikut ini script modifikasi mBerikut ini script modifikasi methodethodindex()index()::

Penjelasan: Penjelasan:

• Panggil methodPanggil method get_records()get_records()pada modelpada model Buku_mBuku_m, untuk mengambil data buku di, untuk mengambil data buku di

tabel. tabel.

• Return valueReturn valuedari method get_records() yang berupa hasil dari method get_records() yang berupa hasil eksekusi queryeksekusi query

dimasukkan ke properti

dimasukkan ke properti datadata[‘[‘queryquery’] untuk dikirimkan ke view.’] untuk dikirimkan ke view.

c.

c. Buat method save()Buat method save()

Pada Modul 1 kita telah

Pada Modul 1 kita telah membuamembuat form input t form input data buku, dimanadata buku, dimanaactionactionformform tersebut mengacu ke class Buku method save. Buatlah sebuah method baru bernama tersebut mengacu ke class Buku method save. Buatlah sebuah method baru bernama save() seperti di bawah ini:

(11)

Penjelasan: Penjelasan:

• Method yang akan berfungsi melakukan aksiMethod yang akan berfungsi melakukan aksiinsert insert atauatauupdateupdatedata, tergantung daridata, tergantung dari

parameter

parameter $is_update$is_updateyang diterimanya dari view yang diterimanya dari view (action dari form).(action dari form). $is_update ==

$is_update ==0, maka aksi0, maka aksi insertinsert.. $is_update !=

$is_update !=0, maka aksi0, maka aksi updateupdate..

• Mengambil data dari form yang Mengambil data dari form yang dikirimkan menggunakan method post, dimasukkan kedikirimkan menggunakan method post, dimasukkan ke

variabel

variabel $data$data[‘[‘JudulJudul’].’]. IndexIndex dari variabeldari variabel $data$datatersebut merupakan nama field ditersebut merupakan nama field di tabel mst_buku, yang akan disimpan

tabel mst_buku, yang akan disimpan datanya.datanya.

• Parameter pertamaParameter pertama $this->input->post()$this->input->post()adalahadalah nama elemennama elemen di form, parameter keduadi form, parameter kedua

bernilai

bernilai TRUETRUEmendefinisikamendefinisikan bahwa data harus difilter n bahwa data harus difilter dahulu oleh class Security.dahulu oleh class Security.

• Script tersebut sama denganScript tersebut sama dengan $_POST$_POST[‘[‘ judul judul’], namun cara konvensional seperti ’], namun cara konvensional seperti ituitu

tanpa filter

tanpa filtersecurity security dahulu.dahulu.

• JikaJika $is_update$is_updatebernilai 0, maka tambah data baru (bernilai 0, maka tambah data baru (insert insert ).). •

• VariabelVariabel $data$datayang merupakan penampung data dari form, dikirimkan sebagaiyang merupakan penampung data dari form, dikirimkan sebagai

parameter method

parameter method insert()insert()di modeldi model Buku_mBuku_m..

• Jika prosesJika prosesinsert insert data sukses, makadata sukses, makaredirect browser ke controllerredirect browser ke controller BukuBuku..

• JikaJika $is_update$is_updatetidak bernilai 0, maka update data lama.tidak bernilai 0, maka update data lama. •

• Ambil ID_Buku dari form, simpan ke vAmbil ID_Buku dari form, simpan ke variabelariabel $id$id.. •

• VariabelVariabel $data$datayang merupakan penampung data dari form, dikirimkan sebagaiyang merupakan penampung data dari form, dikirimkan sebagai

parameter method

parameter method update_by_id()update_by_id()di modeldi model Buku_mBuku_m..

(12)

7.

7. Buat view Daftar BukuBuat view Daftar Buku

Buatlah file baru yang akan berfungsi sebagai

Buatlah file baru yang akan berfungsi sebagaiview view daftar buku, antarmukanya kurang lebihdaftar buku, antarmukanya kurang lebih seperti ini:

seperti ini:

Scriptnya seperti di bawah ini: Scriptnya seperti di bawah ini:

Simpan file tersebut di direktori kerja Anda, pada folder :

Simpan file tersebut di direktori kerja Anda, pada folder : applicationapplication//viewsviews// Beri nama file :

(13)

Penjelasan: Penjelasan:

• Anchor() Anchor() merupakan fungmerupakan fungsi dari helper URL untuk men-gsi dari helper URL untuk men-generateeneratehiperlink.hiperlink. •

• Parameter pertama adalah alamat (url) yang akan diakses.Parameter pertama adalah alamat (url) yang akan diakses. •

• Parameter kedua adalah teks dariParameter kedua adalah teks darihiperlink hiperlink tersebut.tersebut. •

• Script tersebut sama dengan:Script tersebut sama dengan:

• Controller Buku mengirimkan hasil query Controller Buku mengirimkan hasil query melalui variabelmelalui variabel datadata[‘[‘queryquery’]. Oleh CI, index’]. Oleh CI, index

variabel data tersebut diubah menjadi

variabel data tersebut diubah menjadi variabelvariabel pada view. (Ingat kembali materi dipada view. (Ingat kembali materi di Modul 1).

Modul 1).

• Ulangi sebanyakUlangi sebanyak record hasil queryrecord hasil query, resultset query di-, resultset query di- fetch fetchke variabelke variabel $row$rowdengandengan

tipe result array. Lihat point A.3.b. tipe result array. Lihat point A.3.b.

• Script tersebut sama dengan:Script tersebut sama dengan:

8.

8. Uji Coba Insert DataUji Coba Insert Data

Lakukan penambahan beberapa data buku. Jika sudah

Lakukan penambahan beberapa data buku. Jika sudah sukses lanjutkan langkah 9.sukses lanjutkan langkah 9. 9.

9. Buat function EditBuat function Edit

Buka kembali file controller

Buka kembali file controller BukuBuku, kemudian buat method baru bernama, kemudian buat method baru bernama editedit, yang, yang akan berfungsi sebagai pengendali aksi edit data. Berikut script method

akan berfungsi sebagai pengendali aksi edit data. Berikut script method editedit::

Penjelasan: Penjelasan:

• Method yang akan berfungsi mengambil data buku berdasarkan parameterMethod yang akan berfungsi mengambil data buku berdasarkan parameter $id$idyangyang

diterima dari view. diterima dari view.

(14)

• Panggil methodPanggil method get_records()get_records()pada modelpada model Buku_mBuku_m, untuk mengambil data buku di, untuk mengambil data buku di

tabel, berdasarakan kriteria

tabel, berdasarakan kriteria ID_Buku = ‘$id’ID_Buku = ‘$id’..

• Dimaksudkan untuk mengirim variabelDimaksudkan untuk mengirim variabel is_updateis_updateyang bernilaiyang bernilai 11ke view. Berarti aksike view. Berarti aksi

yang akan dilakukan adalah update yang akan dilakukan adalah update data.data. 10.Modifikasi view Form Input Data

10.Modifikasi view Form Input Data Untuk fitur edit

Untuk fitur edit data, tentunya harus ditampilkan dulu data sebelumnya yang akandata, tentunya harus ditampilkan dulu data sebelumnya yang akan diedit. Method

diedit. Method editeditpada controllerpada controller BukuBukumemberikamemberikan data yang akan diedit n data yang akan diedit tersebut ketersebut ke view, maka tugas view adalah menampilkannya pada kolom-kolom isian data. Buka kembali view, maka tugas view adalah menampilkannya pada kolom-kolom isian data. Buka kembali file view

file view buku_form_v.phpbuku_form_v.php, kemudian modifikasi beberapa baris seperti berikut:, kemudian modifikasi beberapa baris seperti berikut:

Penjelasan: Penjelasan:

(15)

• Membuat elemenMembuat elemen hiddenhidden bernamabernama idid, value diisikan, value diisikan ID_BukuID_Buku dari tabel mst_buku.dari tabel mst_buku. •

• Script tersebut sama dengan:Script tersebut sama dengan:

• Membuat elemen combobox / dropdown list bernamaMembuat elemen combobox / dropdown list bernama kategorikategori.. •

• Parameter pertama adalah nama elemen, kedua adalah opsi yang tersedia untukParameter pertama adalah nama elemen, kedua adalah opsi yang tersedia untuk

combobox tersebut, ketiga adalah default value, keempat adalah atribut

combobox tersebut, ketiga adalah default value, keempat adalah atribut tambahan.tambahan.

• Default value diambil dari data pada tabel mst_buku.Default value diambil dari data pada tabel mst_buku. •

• Script tersebut kurang lebih sama dengan:Script tersebut kurang lebih sama dengan:

11.Uji coba edit 11.Uji coba edit

Lakukan perubahan beberapa data buku. Jika sudah sukses lanjutkan langkah 12. Lakukan perubahan beberapa data buku. Jika sudah sukses lanjutkan langkah 12.

(16)

12.Buat function delete 12.Buat function delete

Buka kembali file

Buka kembali file controllercontroller BukuBuku, kemudian buat method baru bernama, kemudian buat method baru bernama deletedelete, yang, yang akan berfungsi sebagai pendelasi aksi hapus data. Berikut script method

akan berfungsi sebagai pendelasi aksi hapus data. Berikut script method deletedelete::

Penjelasan: Penjelasan:

• Method yang akan berfungsi menghapus data Method yang akan berfungsi menghapus data buku berdasarkan parameterbuku berdasarkan parameter $id$idyangyang

diterima dari view. diterima dari view.

• Method ini Method ini dipanggil melaluidipanggil melaluihiperlink hiperlink HapusHapus pada view daftar buku.pada view daftar buku.

• Hapus data buku berdasarkanHapus data buku berdasarkan ID_BukuID_Buku yang dikirimkan dari view.yang dikirimkan dari view. •

• Jika hapus sukses, makaJika hapus sukses, makaredirect redirect browser ke controllerbrowser ke controller Buku.Buku.

13.Uji coba delete 13.Uji coba delete

Lakukan hapus beberapa data buku.

Lakukan hapus beberapa data buku. Sebelum aksi hapus data Sebelum aksi hapus data benar-benar dilakukanbenar-benar dilakukan program,

program, sangat disarankansangat disarankan ada konfirmasi terlebih ada konfirmasi terlebih dahulu. Bagaimana caranya...?dahulu. Bagaimana caranya...? Tambahkan javasc

(17)

CodeIgniter Framework

CodeIgniter Framework

Modul 2

Modul 2

Selesai

Selesai

Gambar

Gambar B.4. Konfigurasi Autoload Library

Referensi

Dokumen terkait

Melalui Program Pasar Sejahtera di Daerah Pekalongan Terhadap Citra Perusahaan” yang akan mencoba mengkaji bahwa apakah program CSR PT Bank Danamon Indonesia Tbk ini

menyembunyikan perahu nelayan dan lokasi dengan aktifitas masyarakat yang tinggi yaitu dekat dermaga yang padat aktifitas, sehingga dapat dilihat

bersifat preventif atau pengendalian internal untuk pencegahan terjadinya peristiwa yang tidak diinginkan dan bersifat detektif atau pengendalian internal

Kesimpulan dari artikel tentang metode pembelajaran Think Pair Share ini adalah; metode pembelajaran Think Pair Share merupakan tipe model pembelajaran kooperatif yaitu

Berdasarkan beberapa pendapat para ahli yang telah disebutkan, maka dapat disimpulkan bahwa media pembelajaran adalah alat atau teknik yang digunakan dalam proses

Tiara Setia Satiti. REMIDIASI PEMBELAJARAN FISIKA MELALUI MODEL PEMBELAJARAN MAKE A MATCH UNTUK MEREDUKSI MISKONSEPSI SISWA KELAS X SMK NEGERI 2 SUKOHARJO MATERI

Puji syukur ke hadirat Allah SWT, karena atas karunia dan bimbingan-Nya sehingga penulis dapat menyelesaikan tesis dengan judul “Pengaruh Konflik Pekerjaan-Keluarga terhadap

tidak dapat meningkatkan Rasio KPMM menjadi lebih besar dari 0% dalam jangka waktu 3 (tiga) bulan sejak ditetapkan dalam status pengawasan khusus, bagi BPR yang pada saat