Codeigniter PDF
Codeigniter PDF
PELATIHAN
CODE IGNITER
MVC
MVC adalah konsep dasar yang digunakan oleh CodeIgniter. Apabila ingin develop
menggunakan framework ini, alangkah baiknya kita mengenal terlebih dahulu konsep MVC pada Code
Igniter. Penggunaan metode penulisan MVC memudahkan developer dalam hal pengembangan
website. Selain itu, dengan penggunaan struktur MVC, developer akan mudah melakukan tracing
terhadap website apabila terjadi kesalahan pemrograman ketika proses pengembangan website.
Komponen-komponen pendukung MVC antara lain:
1. Model
Model sangat erat hubungannya dengan data yang berinteraksi langsung dengan database. Dalam
struktur model, file yang terdapat didalamnya kebanyakan berupa teks, file XML dan web service.
Didalam struktur ini juga terdapat sebuah class yang berfungsi unguk create, update dan delete
data pada website.
2. View
view sangat erat kaitannya dengan tampilan website yang ditampilkan pada end user. Tampilan
tersebut bisa berupa halaman web, rss, javascript dan lain sebagainya. Biasanya kita lebih familiar
dengan istilah HTML, CSS dan Javascript, nah lebih kurang konsep View memiliki fungsi seperti itu.
Pada struktur View, disarankan untuk tidak terdapat proses logika dan proses pengitungan data.
3. Controller
Controller mempunyai fungsi sebagai penghubung antara data dan view. Didalam proses ini
terdapat class yang memproses permintaan dari view ke dalam struktur data yang berada di model.
1
Sama dengan ketentuan di view, pada struktur kontroller sangat disarankan untuk tidak terdapat
proses logika dan perhitungan data. Controller sendiri memiliki tugas untuk menyediakan variabel
guna ditampilkan pada view dan menghubungkan model dengan database.
Berdasarkan penjelasan singkat yang disampaikan pada penjelasan diatas, dapat ditarik
kesimpulan bahwa otak dari seluruh proses kerja CodeIgniter berada di Controller, Tampilan UI dari
CodeIgniter berada pada View dan data-data website tersebut berada pada Model.
Beberapa keunggulan CI antara lain:
1. Gratis
2. Ringan
3. Cepat
4. Menggunakan Konsep MVC
5. Clean URL, URL yang digunakan CI bersifat search-engine friendly. Menggunakan pendekatan
segment-based
6. URL Friendly, Pada CodeIgniter meminimalisasi penggunaan $_GET dan digantikan dengan
penggunakan URI, sehingga setiap output URL yang ditampilkan akan sedikit dalam bahasa
manusiawi
7. Library yang lengkap
8. Dapat diperluas
9. Developer dapat dengan mudah mengembangkan (extend) library, helper atau bahkan perluasan
class inti CI
10.Dukungan teknis yang lengkap di forum CI
1. Index.php berfungsi sebagai pengendali awal, menginisialisasi sumber daya utama yang
dibutuhkan CodeIgniter.
2. Router memeriksa paket HTTP request untuk menentukan aksi apa yang harus dilakukan oleh
sistem. Jika cache tersedia, maka halaman langsung dikirim ke browser, eksekusi sistem yang
normal akan dilewati.
3. Security. Sebelum Application Controller dieksekusi, paket HTTP request dan semua data yang
dikirimkan pengguna akan disaring terlebih dahulu oleh Security Class. Application Controller
menginisialisasi model, library utama, helpers dan semua sumberdaya yang dibutuhkan untuk
setiap request.
4. Antarmuka aplikasi (view) yang sudah disiapkan dikirimkan ke browser. Jika caching diaktifkan,
maka view akan disimpan sementara untuk request yang sama berikutnya.
5. Model, merepresentasikan struktur data. Biasanya class model akan berisi fungsi-fungsi untuk
mengambil data, insert data, dan update data ke database. Pada CI, model tidak harus digunakan,
tapi hal ini akan menghilangkan konsep MVC itu sendiri.
6. View, adalah informasi / halaman yang ditampilkan ke pengguna. Sebuah view biasanya adalah
sebuah web page, tapi di CodeIgniter view juga dapat berupa bagian-bagian halaman web, seperti
header dan footer.
7. Controller, berfungsi sebagai penghubung antara Model, View dan dengan sumber daya lain yang
digunakan untuk memproses HTTP request.
8. Libraries, adalah macam-macam class yang masing-masing mempunyai fungsi khusus yang dapat
digunakan untuk mengembangkan aplikasi. Contoh library database, email, validasi form, dan lainlain.
9. Helper, seperti namanya berfungsi menolong untuk melakukan tugas-tugas tertentu. Setiap file
helper terdiri dari kumpulan fungsi (function). Contoh URL Helper yang berfungsi untuk membuat
link, Form helper untuk membuat elemen-elemen form. Tidak seperti library, helper tidak
menggunakan format Object Oriented, sehingga dapat digunakan dimanapun, baik itu di model,
view, controller dan library.
Setiap Objek selalu memiliki suatu keadaan (state) dan behaviour yang dapat mengubah state
tersebut. Contohnya manusia memiliki state umur, tinggi, berat, dsb. Manusia juga memiliki behaviour
makan, minum, bergerak, dsb. Kita dapat menganggap state sebagai suatu kata benda karena tidak
melakukan operasi justru dilakukan operasi padanya. Sedangkan behaviour dapat dianggap sebagai
kata kerja karena dia berfungsi untuk melakukan operasi.
Dalam OOP juga tidak terlepas dari istilah inheritance. Inheritance merupakan pewarisan
atribut (variable) dan method pada sebuah class yang diperoleh dari sebuah class yang telah
terdefinisi. Sebagai Contoh adalah Kelas Mamalia memiliki sub kelas Sapi, kucing, kambing dan lainlain.
Dalam CI, konsep OOP digunakan untuk membuat kelas, method, dan pewarisannya. Cara
penulisa kelas, method, dan pewarisan secara umum sama dengan bahasa-bahasa lain yang telah
menerapkan OOP.
Class nama_kelas extends kelas_induk {
Function nama_method1(){
//perintah-perintah
}
Function nama_method2(){
//perintah-perintah
}
}
Instalasi CI
1. Download CI (http://www.codeigniter.com/)
2. Pindahkan hasil download ke {XAMPP_DIR}/htdocs/
3. Extraksi file CI
4. Ganti nama folder sesuai project
5. Konfigurasi
3. Views
4. Config
5. Libraries
6. Helpers
<html>
<head>
<title>Latihan 1</title>
</head>
<body>
Hello World
</body>
</html>
5
4. Lalu buat file php dengan nama file hello.php dan disimpan pada folder application/controller
<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Hello extends CI_Controller {
public function index()
{
$this->load->view('vhello');
}
}
?>
Perintah if ( ! defined('BASEPATH')) exit('No direct script access allowed'); digunakan agar
kita tidak bisa mengeksekusi langsung file PHP tanpa melalui index.php yang terdapat dalam
CodeIgniter.
Nama Class harus sama dengan nama file. Misalnya nama filenya hello.php maka nama Class
nya harus Hello. Extend CI_Controller maksudnya adalah class Hello mewarisi seluruh method
public yang terdapat pada class CI_Controller.
public function index() adalah method utama pada class Hello yang akan langsung dipanggil.
$this->load->view('vhello') adalah perintah untuk memanggil tampilan atau view vhallo.php.
C. Pemanfaatan Bootstrap
Bootstrap adalah front-end framework yang memiliki tampilan yang menarik, bagus dan luar
biasa yang mengedapankan tampilan untuk web browser dan mobile device (Handphone, smartphone
dll.) untuk mempercepat dan mempermudah pengembangan website. Bootstrap menyediakan HTML,
CSS dan Javascript siap pakai dan mudah untuk dikembangkan.
Agar perintah base_url() aktif maka konfigurasi file autoload.php di folder application/config, cari
perintah $autoload['helper'] = array(); diubah menjadi $autoload['helper'] = array("url");
7. Copy script content file index.html yang ada pada bootstrap ke file vcontent.php, selanjutnya ikuti
tahapan nomor 6
8. Copy script footer file index.html yang ada pada bootstrap ke file vfooter.php, selanjutnya ikuti
tahapan nomor 6
9. Buka file welcome.php
public function index()
{
$this->load->view('welcome_message');
}
Diubah menjadi
public function index()
{
$this->load->view('vheader');
$this->load->view('vcontent');
$this->load->view('vfooter');
}
10.Buka web browser, jalankan URL http://localhost/latihanci
10
Menampilkan gambar
1.
2.
3.
4.
Untuk menampilkan gambar, tambahkan method get_data_all() pada file msiswa.php (models)
Modifikasi file csiswa.php (controllers), tambahkan method tampilgambar()
Buat datagrid di file vtampilgambar.php (views)
Tambahkan tag img untuk menampilkan gambar
G.Membuat Report
Format PDF
Buat format laporan menggunakan HTML pada umumnya. Untuk menyimpannya dalam bentuk pdf,
cukup perintah cetak pada web browser chrome. Pilih save to pdf.
11