CodeIgniter 2.0 - 3. Library.pdf

CodeIgniter 2.0
Devid Haryalesmana Wahid
Basic Introduction
[email protected]

Devid Haryalesmana Wahid (http://masdevid.com)

Libraries
CodeIgniter 2.0

TUJUAN PRAKTIKUM
1.

Mampu menggunakan libraries bawaan CodeIgniter

2.

Mampu membuat form login beserta session-nya

3.


Mampu membuat form untuk mengunggah file

Dasar Teori
Libraries
Libraries, adalah macam-macam class yang masing-masing mempunyai fungsi
khusus yang dapat digunakan untuk mengembangkan aplikasi. Contoh library
database, email, validasi form, dan lain-lain. Jika anda lihat gambar alur proses
aplikasi ini, libraries berada sejajar dengan models, helpers, plugins, dan script yang
nantinya akan saling berinteraksi dengan controller aplikasi. Seperti halnya helpers,
sumber daya library yang dimiliki CodeIgniter terletak di folder system, dan jika kita
ingin membuat atau mengembangkan class default, anda harus memisahkan class
buatan anda sendiri di folder application.

1

Devid Haryalesmana Wahid (http://masdevid.com)

2

Devid Haryalesmana Wahid (http://masdevid.com)


Latihan
Inisialisasi Library
Untuk menggunakan library, secara umum anda harus menginisialisasi dulu di dalam
controller anda menggunakan kode inisialisasi berikut ini:

Dimana, class_name adalah nama class yang akan dipanggil. Setelah anda
menginisialisasi, anda dapat membaca detail instruksi penggunaan di user_guide.
Anda juga dapat menginisialisasi lebih dari satu class dengan memanfaatkan array(),
seperti contoh berikut ini:

Form Validation Class
Sebelum membahas pendekatan CI dalam memvalidasi data, mari kita perhatikan
skenario idealnya:
1. Form ditampilkan
2. Anda mengisi form lalu mengirimkannya atau submit.
3. Jika anda mengirimkan data yang tidak valid, lupa mengisi atau melewatkan
form wajib, form kembali ditampilkan bersamaan dengan data yang sudah
anda isi, berikut berserta informasi kesalahan pengisian.
4. Proses 1-3 ini akan terus berlanjut sampai anda mengirimkan data yang valid

Jika anda tidak menggunakan pendekatan framework CI, maka anda akan
membutuhkan baris kode yang sangat banyak untuk melakukan proses validasi form.
Mari kita praktekan penggunaan form validation class, sebelumnya anda akan
mempersiapkan berikut ini:
1. Sebuah View yang akan menampilkan form
2. Sebuah View yang akan menampilkan pesan sukses setelah validasi data yang
dikirimkan

3

Devid Haryalesmana Wahid (http://masdevid.com)
3. Sebuah Controller untuk menerima data dari form dan memprosesnya untuk
divalidasi

Form
Buatlah sebuah file bernama myform.php dan simpan di application/views/,
kemudian tuliskan baris code berikut ini:

Pada baris ke-7, validation_errors(); ini akan menampilkan pesan error jika anda
mengirimkan data yang tidak valid.


Halaman Sukses
Buatlah sebuah file bernama formsuccess.php dan simpan di application/views/,
kemudian buat tampilan halaman sukses seperti contoh berikut ini:

4

Devid Haryalesmana Wahid (http://masdevid.com)

Controller
Buatlah sebuah file dengan nama form.php, lalu simpan file tersebut pada direktori
application/controllers/

Penjelasan:


Pada baris ke-7, menginisialisasi form dan url helper




Pada baris ke-9, menginisialisasi class form_validation



Pada baris 11-14, mendefinisikan aturan validasi dimana:
o

Username: Wajib diisi, minimal 5 karakter, maksimal 12 karakter

o

Password: Wajib diisi, harus sama dengan Password Confirmation

5

Devid Haryalesmana Wahid (http://masdevid.com)



o


Passconf: Wajib diisi

o

Emai: Wajib diisi, email yang valid

Pada baris 16-19, menjalankan proses validasi, jika data yang dikirimkan tidak
sesuai aturan validasi, maka akan ditampilkan halaman myform



Pada baris 20-23, jika data yang dikirim sudah benar, maka akan ditampilkan
halaman formsuccess

Silahkan coba mengaksesnya http://example.com/index.php/form

Membuat Aturan Validasi

Fungsi set_rules() diatas memiliki 3 parameter:

1. Parameter pertama, merupakan nama dari item-item form yang anda berikan.
2. Parameter kedua, merupakan “human name” atau nama dari item-item form
untuk dimengerti manusia atau nama label dari item form tersebut.
3. Parameter ketiga, berisi aturan-aturan yang satu sama lain dipisahkan tanda
“|”. Untuk melihat macam-macam aturan yang disediakan akses halaman
http://localhost/[....]/user_guide/libraries/form_validation.html

Membuat Aturan Validasi Baru
Selain anda dapat menggunakan aturan yang sudah disediakan, anda bisa membuat
aturan baru sendiri. Misalnya anda menginginkan username tidak boleh berisi teks
“test”.

Maka

pertama-tama

buatlah

username_check:


6

fungsinya

terlebih

dahulu

bernama

Devid Haryalesmana Wahid (http://masdevid.com)
Kemudian panggil fungsi diatas menggunakan format aturan callback_nama_fungsi,
maka untuk memanggil fungsi diatas, kita akan menambahkan rule baru
callback_username_check pada input username.

Re-populasi Data
Dilatihan sebelumnya, ketika anda mengirimkan data yang tidak valid, maka anda
harus mengulangi lagi mengisi form dari awal. Jika formnya banyak maka ini sangat
merepotkan, kita dapat mere-populasi data tersebut dengan cara menambahkan
set_value(‘nama_field’) pada setiap field yang ingin kita re-populasi. Buka kembali

myform.php dan tuliskan kode berikut untuk mempraktekkan teknik re-populasi
data.

7

Devid Haryalesmana Wahid (http://masdevid.com)

Mengubah Pesan Error
Anda dapat mengubah pesan error pada rule atau aturan validasi dengan cara
menuliskan kode seperti contoh berikut:

Parameter pertama adalah rule yang akan diubah pesan error default-nya.
Parameter kedua berisi pesan kustom anda. Didalam parameter kedua, anda bisa
menyisipkan %s untuk menampilkan “human name” yang sudah anda tuliskan pada
fungsi set_rules();

Menampilkan Pesan Error secara Individual
Pada latihan sebelumnya, fungsi validation_errors() akan menampilkan semua
pesan error dalam satu tempat. Jika anda ingin menampilkan pesan error secara
individu, anda dapat menggunakan fungsi form_error(‘nama_field’). Buka kembali

file myform.php dan lakukan modifikasi seperti contoh berikut ini:

8

Devid Haryalesmana Wahid (http://masdevid.com)

File Upload Class
Untuk membuat form untuk mengupload sebuah file, langkah-langkah idealnya
adalah seperti berikut:
1. Form upload ditampilkan, user memilih file yang akan diunggah
2. Ketika form dikirim, file diunggah lalu diletakkan ke direktori yang anda
tentukan
3. Bersamaan dengan proses mengunggah, file akan divalidasi terlebih dahulu
apakah filter tersebut telah sesuai dengan aturan yang anda buat
4. Ketika file berhasil diunggah, maka akan ditampilkan pesan sukses.
Untuk mendemonstrasikannya, mari langsung kita praktekkan:

Membuat Form Upload
Buatlah file dengan nama upload_form.php, simpan di application/views/ lalu
tuliskan kode berikut:


Berbeda dengan praktek sebelumnya, disini anda tidak lagi menggunakan fungis
form_open() melainkan form_open_multipart().

9

Devid Haryalesmana Wahid (http://masdevid.com)

Halaman Sukses
Pada halaman ini anda menampilkan pesan sukses dan menampilkan upload_data
file yang telah anda unggah. Buat file bernama upload_success.php simpan di
application/views/, lalu tuliskan kode berikut ini:

10

Devid Haryalesmana Wahid (http://masdevid.com)

Controller
Langkah berikutnya adalah anda membuat controllernya. Buatlah sebuah controller
bernama upload.php dan simpan di application/controllers/, lalu ketikkan kode
berikut ini:

Penjelasan:
Perhatikan

baris

ke-12,

pada

baris

tersebut

merupakan

konfigurasi

lokasi

penyimpanan file yang akan diunggah dengan nama folder uploads. Folder ini harus
anda letakkan di root direktori aplikasi anda sejajar dengan folder system. Pastikan
permisi foldernya nilainya 777.
Pada baris ke-18 terdapat fungsi $this->upload->do_upload(), merupakan fungsi
untuk menjalankan proses pengunggahan file.

11

Devid Haryalesmana Wahid (http://masdevid.com)
Pada baris ke-19 terdapat fungsi $thisuploaddisplay_errors(), berfungsi
untuk menampilkan pesan error.
Pada baris ke-22 terdapat fungsi $thisuploaddata(), merupakan fungsi untuk
menampilkan informasi file yang diunggah. Informasi ditampilkan dalam bentuk
array() dengan hasil seperti berikut:

Session Class
Session berguna untuk menyimpan data aktifitas user. Akan sangat bermanfaat
untuk membuat aplikasi login dan logout. Dimana ketika login sukses, anda bisa
menyimpan informasi sesi user seperti nama, email, dan status login. Berikut
inisialisasi class Session:

Membuat Session
Untuk membuat session dapat menggunakan fungsi set_userdata() seperti contoh
kode berikut ini:

$array disini berisikan session_id dan session_value lebih dari 1. Contoh:

12

Devid Haryalesmana Wahid (http://masdevid.com)

Jika anda ingin membuat 1 session_id saja, anda dapat menggunakan kode berikut
ini:

Membaca Session
Untuk membaca session anda dapat menggunakan fungsi userdata() seperti contoh
kode berikut ini:

Menghapus Session
Untuk menghapus session anda dapat menggunakan fungsi unset_userdata()
seperti contoh kode berikut ini:

Kode diatas anda gunakan untuk menghapus session_id secara individual maupun
secara kelompok menggunakan $array. Tetapi jika anda ingin menghapus
keseluruhan session, anda dapat menggunakan fungsi sess_destroy() seperti
contoh kode berikut ini:

13

Devid Haryalesmana Wahid (http://masdevid.com)

Tugas Praktikum
1. Buatlah aplikasi login beserta sessionnya, dimana ketika user sedang login
akan ditampilkan halaman untuk mengupload sebuah gambar.
2. Jika gambar berhasil diunggah maka tampilkan gambar tersebut.
3. Buat fungsi callback untuk mengecek apakah password = “admin”. Jika
password benar, buat session untuk menyimpan username, email, dan status
login.
4. Sediakan pula link untuk logout yang akan menghapus semua data session
dan mengarahkan pengguna kembali ke halaman login.
5. Pastikan form upload hanya dapat diakses ketika user dalam keadaan login
saja (memanfaatkan session).

14

Dokumen yang terkait

Idioms Used In Real Steel Movie - Digital Library IAIN Palangka Raya

2 4 9

BAB IV HASIL PENELITIAN - Pengaruh Dosis Ragi Terhadap Kualitas Fisik Tempe Berbahan Dasar Biji Cempedak (Arthocarpus champeden) Melalui Uji Organoleptik - Digital Library IAIN Palangka Raya

0 2 20

BAB I PENDAHULUAN A. Latar Belakang - Uji Kualitas Mikrobiologi Minuman Olahan Berdasarkan Metode Nilai MPN Coliform di Lingkungan Sekolah Dasar (SD) dan Madrasah Ibtidaiyah (MI) Kelurahan Pahandut Palangka Raya - Digital Library IAIN Palangka Raya

1 2 12

The effect of personal vocabulary notes on vocabulary knowledge at the seventh grade students of SMP Muhammadiyah Palangka Raya - Digital Library IAIN Palangka Raya

0 0 20

BAB I PENDAHULUAN A. Latar Belakang - Pengaruh variasi berat glukosa pada filtrat tomat (solanum lycopersicum (L) Commune) dan lama fermentasi acetobacter xylinum terhadap tingkat ketebalannata de tomato - Digital Library IAIN Palangka Raya

0 2 9

BAB I PENDAHULUAN A. Latar Belakang Masalah - Penerapan metode eksperimen terhadap pokok bahasan bunyi untuk meningkatkan hasil belajar siswa mtsn 2 palangka raya kelas VIII semester II tahun ajaran 2013/2014 (studi eksperimen) - Digital Library IAIN Pala

0 0 10

BAB IV HASIL PENELITIAN - Penerapan model pembelajaran inquiry training untuk meningkatkan berpikir kritis dan hasil belajar siswa pada pokok bahasan gerak lurus - Digital Library IAIN Palangka Raya

0 1 23

CHAPTER I INTRODUCTION - The effectiveness of anagram on students’ vocabulary size at the eight grade of MTs islamiyah Palangka Raya - Digital Library IAIN Palangka Raya

0 0 10

BAB II KAJIAN TEORITIK A. Penelitian Sebelumnya - Perbedaan penerapan metode iqro’ di TKQ/TPQ Al-Hakam dan TKQ/TPQ Nurul Hikmah Palangka Raya - Digital Library IAIN Palangka Raya

0 0 26

1 BAB I PENDAHULUAN A. Latar Belakang - Penerapan model Problem Based Instruction (PBI) terhadap pemahaman konsep dan hasil belajar siswa pokok bahasan tekanan Kelas VIII Semester II di SMPN Palangka Raya Tahun Ajaran 2015/2016 - Digital Library IAIN Pala

0 3 80