Transcription

MODULWEB PROGRAMMING IIDisusun Oleh:UNIT PENGEMBANGAN AKADEMIKUNIVERSITAS BINA SARANA INFORMATIKAPROGRAM STUDI SISTEM INFORMASIJAKARTA2020

KATA PENGANTARSegala puji syukur kepada Tuhan Yang Maha Esa karena berkat rahmatNya penulisanmodul Mata Kuliah Web Programming II dapat terselesaikan dengan baik. Modul ini disusununtuk memenuhi kebutuhan mahasiswa dalam mata kuliah Web Programming II yangdisajikan dalam bentuk praktikum dan diharapkan dapat membekali mahasiswa dalammemahami Pembuatan web dengan menggunakan Framework Codeigniter.Modul web Programming II materi bahasan dibatasi sampai dengan ahasiswadiharapkanmampumengimplementasikannya dalam bentuk final project yang harus dipresentasikan sebagaisyarat kelulusan mata kuliah Web Programming II. Teknik penyajiannya dilakukan secaraterpadu dan sistematis.Seperti layaknya sebuah modul, maka pembahasan dimulai dengan menjelaskan targetpembelajaran yang hendak dicapai. Dengan demikian pengguna modul ini secara mandiridapat mengukur tingkat ketuntasan yang dicapainya.Penulis menyadari sepenuhnya bahwa modul ini tentu memiliki banyak kekurangan.Untuk itu penulis dengan lapang dada menerima masukan dan kritik yang konstruktif dariberbagai pihak demi kesempurnaannya di masa yang akan datang. Semoga modul ini dapatbermanfaat bagi para pembaca.Jakarta, Agustus 2018Tim Penulisii

DAFTAR ISIHALAMAN SAMPUL . Error! Bookmark not defined.KATA PENGANTAR .iiDAFTAR ISI. iiiPERTEMUAN 1 PENJELASAN KONTRAK KULIAH, PENEGASAN TUGAS . 11.1Penjelasan Kontrak Kuliah dan Penegasan Tugas . 1PERTEMUAN 2 PENGENALAN CODE IGNITER . 22.1Framework Web . 32.2Codeigniter . 42.3Instalasi Software . 42.4Instalasi Codeigniter . 52.5Struktur Folder Codeigniter. 6PERTEMUAN 3 MODEL, VIEW, CONTROLLER . 123.1Pengertian MVC . 123.2Menetukan Kontroler Standar (Default). 173.3Menghilangkan index.php pada codeigniter . 173.4Aturan merancang Model, View, dan Controller . 193.5Parsing Data (mengirimkan nilai) dari controller Ke View . 20PERTEMUAN 4 MEMBUAT TEMPLATE (TEMPLATING) WEB SEDERHANA . 244.1Membuat Template Sederhana yang dinamis . 254.2Seting base url () pada codeigniter . 30PERTEMUAN 5 MEMBUAT FORM VALIDASI PADA CODEIGNITER . 355.1Form Validasi . 355.2Mekanisme Validasi Data di dalam Form . 355.3Memuat Library Form validation . 36PERTEMUAN 6 STUDI KASUS PUSTAKA-BOOKING . 386.1Persiapan Membuat Aplikasi pustaka-booking . 396.2Setting Base URL . 416.3Merancang & Membuat Database Aplikasi pustaka-booking dan Konfigurasidatabase di Codeigniter . 426.4Membuat Koneksi Database Codeigniter dengan MySQL . 446.5Membuat Model untuk CRUD . 46PERTEMUAN 7 REVIEW MATERI . 49PERTEMUAN 8 UJIAN TENGAH SEMESTER . 51iii

PERTEMUAN 9 MEMBUAT FORM LOGIN DAN PESAN NOTIFIKASI . 529.1Membuat Halaman Login . 529.2Membuat Halaman Admin . 62PERTEMUAN 10 MEMBUAT FORM REGISTRASI USER . 7410.1 Membuat helper . 7510.2 Membuat Form Registrasi . 8110.3 Membuat Halaman My Profile dan Ubah Profile . 86PERTEMUAN 11 MEMBUAT KATEGORI BUKU . 9211.1 Membuat Tampil Data Kategori. 9311.2 Hapus data kategori . 96PERTEMUAN 12 MEMBUAT CRUD DATA BUKU . 9712.1 Menampilkan Data Buku dan tambah Buku . 9812.2 Update Data Buku . 10712.3 Menghapus Data Buku. . 110PERTEMUAN 13-15 PRESENTASI PROJEK . 111PERTEMUAN 16 UJIAN AKHIR SEMESTER . 112DAFTAR PUSTAKA . 113iv

PERTEMUAN 1PENJELASAN KONTRAK KULIAH, PENEGASAN TUGASDeskripsi PembelajaranPada bab ini dijelaskan bagaimana proses pembelajaran berlangsung setiap pertemuannyayaitu mahasiswa diarahkan untuk mandiri dengan diberikan tugas individu di setiappertemuan yang mana tugas tersebut berupa mengimpplementasikan dan mengerjakan tiapmateri dan latihan yang ada pada pertemuan berikutnya. Sehingga pada saatnya pertemuantersebut berlangsung, mahasiswa sudah mengetahui materi yang ada dan bisa fokusberdiskusi pada bagian materi yang masih kurang paham.Tujuan PembelajaranPada bab ini diharapkan mahasiswa dapat memahami kontrak perkuliahan yang harus diikutidan jenis tugas yang akan diberikan selama satu semester ke depan.1.1Penjelasan Kontrak Kuliah dan Penegasan TugasA.Tugas Projek (Kelompok)1. Tugas project diadakan untuk memperoleh nilai dan pengganti UTS dan UAS. Tugasini dikerjakan secara kelompok dengan 1 kelompok sebanyak 5 mahasiswa ataudisesuaikan dengan jumlah mahasiswa dalam satu kelas.2. Tugas dan Kelompok harus sesuai dan disinkronkan dengan tugas mata kuliah SIM,PSBO, dan WP2.3. Bentuk tugas projek adalah mencari aplikasi web nativ (tidak menggunakanframework) yang sudah jadi kemudian di transformasikan menjadi aplikasi webframework CodeIgniter dan membuat analisa kebutuhan user dan sistem dari webtersebut.4. Aplikasi web nativ harus ditunjukan ke dosen pengampu matakuliah, sebagai buktibahwa aplikasi web nativ memang ada dan jalan.5. Aplikasi web nativ diperbolehkan didapat dari berbagai sumber.B.Tugas Mingguan (individu)1. Tugas mingguan mulai dikerjakan di minggu pertama untuk disetorkan dandidemonstrasikan di minggu berikutnya. Begitu seterusnya di setiap minggu.

2. Bentuk tugas mingguan adalah mengimplementasikan materi tiap pertemuan yangada di modul dimulai dari materi pertemuan ke 2 sampai materi pertemuan terkahir.Tugas Pertemuan 1a. Mahasiswa mengerjakan dan materi yang ada di pertemuan 2 yaitu installasiCodeigniter dan mengerjakan contoh 1 yang ada pada modul halaman 3-4 danhalaman 7.b. Demonstrasikan dan kumpulkan hasilnya di pertemuan selanjutnya.2

PERTEMUAN 2PENGENALAN CODE IGNITERDeskripsi PembelajaranPada bab ini akan dibahas tentang framework dan jenis-jenisnya, codeigniter, pemasangansoftware yang dibutuhkan, cara memasang dan menggunakan codeigniter, struktur daricodeigniter, file konfigurasi codeigniter, kontroler standar, dan latihan perkenalan.Tujuan PembelajaranPada bab ini diharapkan mahasiswa dapat memahami materi-materi fundamental yangdiperlukan sebelum mempelajari framework codeigniter, yaitu bagaimana cara melakukaninstalling perangkat-perangkat lunak yang diperlukan untuk dapat bekerja dengan codeigniterseperti PHP, web server, database server, dan framework codeigniter itu sendiri. Mahasiswajuga diharapkan dapat memahami pola desain atau arsitektur dari Model-View-Controller(MVC), yang merupakan syarat mutlak dalam proses pengembangan aplikasi menggunakancodeigniter.2.1Framework WebWeb Application Framework (WAF), atau sering disingkat web framework, adalahSuatu kumpulan kode berupa pustaka (library) dan alat (tool) yang dipadukan sedemikianrupa menjadi kerangka kerja (framework) guna memudahkan dan mempercepat prosespengembangan aplikasi.Framework web untuk PHP: Codeigniter Yii Slim framework Zend framework Laravel Symfony CakePHP Phalcon Kohana3

FuelPHP, dllSebagian besar dari framework di atas mengimplementasikan pola desain Model-ViewController (MVC), yang memisahkan bagian kode untuk penanganan proses bisnis denganbagian kode untuk keperluan presentasi (tampilan).2.2CodeigniterCodeigniter adalah framework web utnuk bahasa pemrograman PHP, yang dibuat olehRick Ellis pada tahun 2006, penemu dan pendiri EllisLab (www.ellislab.com). EllisLabmerupakan suatu tim kerja yang berdiri pada tahun 2002 yang bergerak di bidang pembuatansoftware dan tool untuk para pengembang web. Sejak tahun 2014 sampai sekarang , EllisLabtelah menyerahkan hak kepemilikan codeigniter ke British columbia Institue of Technology(BCIT) saat ini situs resmi codeigniter adalah www.codeigniter.com.2.3Instalasi SoftwareSoftware yang dibutuhkan pada pembelajaran kali ini yaitu:a. Web server (Apache2Triad, WAMPP server, Xampp Server, dll)Untuk Xampp server bisa didownload di https://www.apachefriends.org/b. Text Editor yaitu notepad , sublime text, atom, visual studio code, dllc. Codeigniter https://codeigniter.com/d. Web Browser (Mozila Firefox, google chrome, IE, Safari, UCBrowser, Opera, dll).Semua software yang dibutuhkan diatas dapat anda download melalui link berikut:https://drive.google.com/open?id 1RrGuGgMBiGRc Qa8N905yA7w0LotrkNc4

2.4Instalasi Codeignitera. Download Package codeigniter pada situ resminya yang sudah disebutkan di atas.b. Saat ini versi stabil dari codeigniter adalah 4.0.3Sumber: www.tutorialpedia.netGambar 1. Penempatan Folder Codeigniterc. Setelah didownload, ektrak file codeigniter pada direktori C:\xampp\htdocsd. lalu ubah folder Codeigniter menjadi sesuai keinginan kita. disini saya akan ubahfolder codeigniter tersebut menjadi pustaka-booking.Sumber: www.tutorialpedia.netGambar 2. Mengubah Nama Folder Root5

e. Setelah itu, sekarang coba akses folder tersebut melalui browser dengan mengetikkanurl http://localhost/pustaka-booking. jangan lupa menyalakan XAMPP terlebihdahulu.Sumber: www.tutorialpedia.netGambar 3. Tampilan Awalf. Jika sudah tampil halaman Welcome Codeigniter, itu artinya anda telah berhasilmelakukan instalasi codeigniter.2.5Struktur Folder CodeigniterDi dalam folder codeigniter terdapat 3 folder utama yaitu Application, System, UserGuide. Folder application berguna sebagai tempat untuk mengembangkan aplikasi webnanti, Folder systemberisi library atau kumpulan fungsi-fungsi dasar Codeigniter(CI), sedangkan User Guide berisi sebagai buku panduan atau dokumentasi dari codeigniter.6

Sumber: www.tutorialpedia.netGambar 4. Struktur Folder CodeigniterPertama kali kita fokus pada folder application/config di dalam folder config initerdapat file-file konfigurasi utama dan pertama kali untuk memudahkan pembuatan danpengembangan semua file yang akan dibuat dan semua berawal dari file routes.php Apabilakita buka file tersebut, maka kita akan menemukan default controller yang telah terisidengan nama “welcome”, yang mana default controller ini berfungsi ketika user tidakmelakukan atau memasukkan apapun pada URL browser, maka secara otomatis mencaricontroller dengan nama “welcome”. (lihat gambar 5).Sumber: www.tutorialpedia.netGambar 5. Default Controller Codeigniter7

Controller Welcome itu sendiri bisa anda temukan pada folder application/controllers.Pada file welcome controller tersebut terdapat fungsi index yang gunanya meload bagianview atau memanggil halaman views dengan nama welcome messages sebagai berikut. ?phpdefined('BASEPATH') OR exit('No direct script access allowed');class Welcome extends CI Controller {/*** Index Page for this controller.** Maps to the following URL*http://example.com/index.php/welcome* - or *http://example.com/index.php/welcome/index* - or * Since this controller is set as the default controller in* config/routes.php, it's displayed at http://example.com/** So any other public methods not prefixed with an underscore will* map to /index.php/welcome/ method name * @see https://codeigniter.com/user guide/general/urls.html*/public function index(){ this- load- view('welcome message');}}Sekarang lihat pada bagian views yang terletak pada application/views. Pada folderview tersebut terdapat file dengan nama welcome message. Pada bagian inilah semua htmldan css akan diletakkan yang nantinya akan ditampilkan ke pengunjung. ?phpdefined('BASEPATH') or exit('No direct script access allowed');? !DOCTYPE html html lang "en" head meta charset "utf-8" title Welcome to CodeIgniter /title style type "text/css" ::selection {8

background-color: #E13300;color: white;}::-moz-selection {background-color: #E13300;color: white;}body {background-color: #fff;margin: 40px;font: 13px/20px normal Helvetica, Arial, sans-serif;color: #4F5155;}a {color: #003399;background-color: transparent;font-weight: normal;}h1 {color: #444;background-color: transparent;border-bottom: 1px solid #D0D0D0;font-size: 19px;font-weight: normal;margin: 0 0 14px 0;padding: 14px 15px 10px 15px;}code {font-family: Consolas, Monaco, Courier New, Courier, monospace;font-size: 12px;background-color: #f9f9f9;border: 1px solid #D0D0D0;color: #002166;display: block;margin: 14px 0 14px 0;padding: 12px 10px 12px 10px;}#body {margin: 0 15px 0 15px;}p.footer {9

text-align: right;font-size: 11px;border-top: 1px solid #D0D0D0;line-height: 32px;padding: 0 10px 0 10px;margin: 20px 0 0 0;}#container {margin: 10px;border: 1px solid #D0D0D0;box-shadow: 0 0 8px #D0D0D0;} /style /head body div id "container" h1 Welcome to CodeIgniter! /h1 div id "body" p The page you are looking at is being generated dynamically by CodeIgniter. /p p If you would like to edit this page you'll find it located at: /p code application/views/welcome message.php /code p The corresponding controller for this page is found at: /p code application/controllers/Welcome.php /code p If you are exploring CodeIgniter for the very first time, you should start by reading the a href "user guide/" User Guide /a . /p /div p class "footer" Page rendered in strong {elapsed time} /strong seconds. ?php echo (ENVIRONMENT 'development') ? 'CodeIgniter Version strong ' . CI VERSION . ' /strong ' : '' ? /p /div /body /html 10

Contoh menampilkan pandalamfolderApplication/Controllers ?phpclass Contoh1 extends CI Controller{public function index(){echo " h1 Perkenalkan /h1 ";echo"Nama saya Imam NawawiSaya tingga di daerah Ciputatolah raga yang saya sukai contoh1Tugas Pertemuan 2a. Mahasiswa mengerjakan dan mengimplementasikan materi yang ada di pertemuan3 yaitu mengerjakan contoh1,contoh2,contoh3, dan menghilangkan index.php yangada di modul halaman 14-17.b. Demonstrasikan dan kumpulkan hasilnya di pertemuan selanjutnya.11

PERTEMUAN 3MODEL, VIEW, CONTROLLERDeskripsi PembelajaranPembelajaran pertemuan ini meliputi tentang pengertian, maksud dan konsep daripada MVCdisertai contoh penggunaan mulai dari controller saja, kemudian controller dengan view, dancontoh menggunakan controller, view, dan model. Pada pertemuan ini juga dijelaskan tentangaturan dalam membuat MVC, menentukan controller standar default, menghilangkanindex.php, pembuatan file .htaccess dan bagaimana mekanisme pengiriman nilai antaraModel, view dan controller.Tujuan PembelajaranPada bab ini diharapkan mahasiswa dapat memahami secara detail tentang pembuatan danpenggunaan komponen model, view, controller yang merupakan kunci utama dalammenggunakan framework codeigniter.3.1Pengertian MVCPada pengertian codeigniter di atas tadi dijelaskan bahwa codeigniter menggunakanmetode MVC. Apa itu MVC? kita juga harus mengetahui apa itu MVC sebelum masuk danlebih jauh dalam belajar codeigniter.MVC adalah teknik atau konsep yang memisahkan komponen utama menjadi tigakomponen yaitu model, view dan controller.a.ModelModel adalah kelas yang merepresentasikan atau memodelkan tipe data yang akandigunakan oleh aplikasi. Model juga dapat didefinisakn sebagai bagian penanganan yangberhubungan dengan pengolahan atau manipulasi database. seperti misalnya mengambil datadari database, menginput dan pengolahan database lainnya. semua intruksi atau fungsi yangberhubung dengan pengolahan database di letakkan di dalam model. Sebagai contoh, jikaingin membuat aplikasi untuk menghitung luas dan keliling lingkaran, maka dapatmemodelkan objek lingkaran sebagai kelas model.12

Sebagai catatan, Semua model harus disimpan di dalam folder application\modelsb.ViewView merupakan bagian yang menangani halaman user interface atau halaman yangmuncul pada user(pada browser). tampilan dari user interface di kumpulkan pada view untukmemisahkannya dengan controller dan model sehingga memudahkan web designer dalammelakukan pengembangan tampilan halaman website.c.ControllerController merupakan kumpulan intruksi aksi yang menghubungkan model dan view,jadi user tidak akan berhubungan dengan model secara langsung, intinya data yang tersimpandi database (model) di ambil oleh controller dan kemudian controller pula yang menampilkannya ke view. Jadi controller lah yang mengolah intruksi.Dari penjelasan tentang model view dan controller di atas dapat disimpulkan bahwacontroller sebagai penghubung view dan model. misalnya pada aplikasi yang menampilkandata dengan menggunakan metode konsep mvc, controller memanggil intruksi pada modelyang mengambil data pada database, kemudian controller yang meneruskannya pada viewuntuk ditampilkan. jadi jelas sudah dan sangat mudah dalam pengembangan aplikasi dengancara mvc ini karena web designer atau front-end developer tidak perlu lagi berhubungandengan controller, dia hanya perlu berhubungan dengan view untuk mendesign tampilannaplikasi, karena back-end developer yang menangani bagian controller dan modelnya. Jadipembagian tugas pun menjadi mudah dan pengembangan aplikasi dapat dilakukan dengancepat dan terstruktur.Bentuk umum model seperti berikut:Class Nama model extends CI model {// badan kelas}jika ingin memanggil konstruktor kelas CI model dari konstruktor kelas model yangdidefinisikan, maka bentuk umumnya seperti berikut:Class Nama model extends CI model {//konstruktor kelas model13

Function construct( ) {//memanggil konstruktor kelas CI model parent: : construct( );//.}// .}Contoh1 penggunaan hanya controllerController Latihan1 simpan dalam folder Application/controllers/ ?phpclass Latihan1 extends CI Controller{public function index(){echo "Selamat Datang. selamat belajar Web Programming";}}Untuk melihat hasilnya ketikkan url localhost/pustaka-booking/latihan1Contoh2 menggunakan Controller dan ModelModel Model latihan1.php simpan di application\models\ ?phpclass Model latihan1 extends CI Model{//membuat variable untuk menampung nilaipublic nilai1, nilai2, hasil;//method penjumlahanpublic function jumlah( n1 null, n2 null){14

this- nilai1 nil1; this- nilai2 nil2; this- hasil this- nilai1 this- nilai2;return this- hasil;}}Ubah controller Latihan1 yang sebelumnya sudah dibuat sehingga menjadi seperti berikut: ?phpclass Latihan1 extends CI Controller{public function index(){echo "Selamat Datang. selamat belajar Web Programming";// this- load- view('view-latihan1');}public function penjumlahan( n1, n2){ this- load- model('Model latihan1'); hasil this- Model latihan1- jumlah( n1, n2);echo "Hasil Penjumlahan dari". n1 ." ". n2 ." ". hasil;}}Untuk melihat hasilnya ketikkan njumlahan/2/6Contoh3 menggunakan Controller, View dan ModelView view-latihan.php Simpan di application\views\ html head title Latihan 1 /title /head body 15

Halo Kawan. Yuk kita belajar web programming.!!! br Nilai 1 ? nilai1; ? Nilai 2 ? nilai2; ? ini hasil dari pemodelan dengan methode penjumlahan yaitu ? nilai1 . " " . nilai2 . " " . hasil; ? /body /html Ubah controller Latihan1 yang sebelumnya sudah dibuat sehingga menjadi seperti berikut: ?phpclass Latihan1 extends CI Controller{public function index(){echo "Selamat Datang. selamat belajar Web Programming";// this- load- view('view-latihan1');}public function penjumlahan( n1, n2){ this- load- model('Model latihan1'); data['nilai1'] n1; data['nilai2'] n2; data['hasil'] this- Model latihan1- jumlah( n1, n2); this- load- view('view-latihan1', data);}}Untuk melihat hasilnya ketikkan njumlahan/2/616

3.2Menetukan Kontroler Standar (Default)Controller standar (default) adalah controller yang akan dipanggil secara otomatis ketikauser tidak menyertakan nama controller di dalam URI.Contoh penulisan URI:http://localhost/pustaka-booking/index.phppada contoh permintaan di atas, kita tidak menyertakan nama controller yang akan dipanggil(segmen pertama). Permintaan tersebut akan memanggil controller standar yang sudahdidefinisikan oleh codeigniter, dan akan memberikan hasil seperti pada gambar 3 padapertemuan 2:Controller standar dapat ditentukan sendiri sesaui dengan keinginan, yaitu dengan caramelakukan konfigurasi pada file routes.php yang terletak pada folder application\config\.cari baris code berikut: route['default controller'] 'welcome';Ubah kata welcome dengan nama controller yang diinginkan untuk dijadikan controllerstandar3.3Menghilangkan index.php pada codeigniterDalam rangka pengamanan web site, biasanya seorang web developer akan melakukanberbagai trik untuk dapat mengamankan web miliknya. Ada yang dibuatkan sistem sandiyang diubah secara berkala, ada yang menggunakan sistem sandi dengan teknik kriptografiyaitu mengenkrip sandi sedemikian rupa agar tidak mudah dipecahkan oleh pihak yang tidakbertanggung jawab, ada juga yang menggunakan trik kamuplase pengaksesan file, dan lainlain. Berikut ini adalah salah satu trik untuk mengelabuhi pihak yang tidak bertanggungjawab agar tidak mudah untuk melakukan pencurian atau penggunaan data yang merugikanyaitu dengan cara menghilangkan index.php pada url codeigniter. cara nya buka /, config[‘index page] seperti di bawah ini. config['index page'] 'index.php';17kemudiancaripengaturan

Kemudian hapus index.php pada pengaturan sehingga menjadi config['index page'] '';Setelah menghapus index, selanjutnya adalah membuat file .htaccess pada direktoriroot codeigniter. Caranya buat file baru dengan nama .htaccess tanpa diberi extensi, karena.htaccess merupakan file yang tidak berekstensi. Diawali dengan tanda titik ( . ).File pustaka-booking/.htaccessRewriteEngine OnRewriteCond %{REQUEST FILENAME} !-fRewriteCond %{REQUEST FILENAME} !-dRewriteRule (.*) index.php/ 1 [L]Simpan dan sekarang coba akses di web. Di sini untuk contoh dalam rangka mencobaapakah sudah berhasil atau belum menghilangkan index pada codeigniter, kita akan cobamengakses method penjumlahan yang sudah ada pada controller Latihan1.php tanpamenyertakan kata index.php pada URL.Jika biasanya untuk mengakses method dalam kontroler Latihan1 diatas harus index.php/latihan1/penjumlahan/4/6maka sekarang tidak perlu, melainkan bisa langsung mengakses alamat url di atas tanpamenyertakan kata index.phphttp://localhost/pustaka-booking/ latihan1/penjumlahan/4/6berikut hasil dalam browser18

3.4Aturan merancang Model, View, dan Controllera. ModelSecara umum perancangan model dapat dibuat menggunakan aturan berikut:1) Model harus memiliki atribut yang dapat mewakili element tertentu.2) Model seharusnya berisi kode kode yang menangani proses bisnis untuk databersangkutan, misalnya untuk melakukan proses validasi data.3) Model boleh berisi kode kode yang dugunakan untuk memanipulasi data,misalnya untuk menambah baris data baru, mengubah baris data, dan menghapusbaris data pada sebuah tabel yang terdapat dalam database.4) Model seharusnya tidak berisi kode kode yang berkaitan langsung denganpermintaan yang dilakukan oleh user melalu URL (tidak berisi GET maupun POST). Pekerjaan seperti ini seharusnya dilakukan oleh controller.5) Model seharusnya tidak berisi kode kode yang berkaitan dengan presentasi(tampilan) halaman web yang akan disajikan ke hadapan user. Pekerjaansemacam ini seharusnya dilakukan oleh view.b. ViewBerikut ini aturan yang dapat digunakan untuk merancang view.1) View harus berisi kode kode yang bersifat presentasional, biasanya berupa kodeHTML. View juga dapat berisi perintah perintah PHP sederhana yang masihberkaitan dengan proses pembuatan tampilna, misalnya untuk menampilkan datayang dihasilkan oleh model tertentu.2) View seharusnya tidak berisi kode PHP yang melakukan akses data secaralangsung ke database. Pekerjaan semacam ini sebaiknya dilakukan oleh model.3) View seharunsnya menghindari kode PHP yang mengakses secara langsungpermintaan dari user (tidak berisi GET maupun POST). Tugas ini sebaiknyadidelegasikan ke controllerc. ControllerBerikut ini aturan yang dapat digunakan untuk merancang controller.1) Controller boleh mengakses GET, POST, dan variabel variabel PHP lainnyayang berkaitan dengan permintaan user.19

2) Controller boleh membuat objek (instance) dari kelas kelas model danmengarahkan ke view (jika model bersangkutan menghasilkan data yang perluditampilkan ke user)3) Controller seharusnya tidak berisi kode kode yang mengakses data secaralangsung dari database. Tugas seperti ini sebaiknya dilakukan oleh model. Dancontroller tinggal menggunakannya saja.4) Controller seharusnya tidak berisi kode kode HTML yang diperlukan untuktujuan presentasi. Tugas ini sebaiknya dilakukan oleh view.3.5Parsing Data (mengirimkan nilai) dari controller Ke ViewUntuk mengirimkan nilai dari controller ke view, anda dapat mengirimkannya denganmenggunakan bantuan array. Jadi data yang akan diparsing kita masukkan ke array.Perhatikan contoh cara pengiriman nilai ke view codeigniter berikut ini.Contoh5 mengirimkan nilai dari controller ke viewBuatlah sebuah view baru beri nama view-form-matakuliah.php kemudian simpan dalamforlder Application/views/ dan ketik script berikut: html head title Form Input Matakuliah /title /head body center formaction " ? base url('matakuliah/cetak');method "post" table tr th colspan "3" Form Input Data Mata Kuliah /th /tr tr td colspan "3" 20? "

hr /td /tr tr th Kode MTK /th th : /th td input type "text" name "kode" id "kode" /td /tr tr th Nama MTK /th td : /td td input type "text" name "nama" id "nama" /td /tr tr th SKS /th td : /td td select name "sks" id "sks" option value "" Pilih SKS /option option value "2" 2 /option option value "3" 3 /option option value "4" 4 /option /select /td /tr tr td colspan "3" align "center" input type "submit" value "Submit" /td /tr /table /form /center /body /html 21

Script di atas akan membentuk sebuah tampilan form input data yang akan di submitkemudian di proses ke sebuah controller. Untuk kita perlu membuat controller terlebih dahuluberi nama Matakuliah.php kemudian simpan dalam folder Application/controllers/ laluketiklah script berikut ini: ?phpclass Matakuliah extends CI Controller{public function index(){ this- load- view('view-form-matakuliah');}public function cetak(){ data ['kode' this- input- post('kode'),'nama' this- input- post('nama'),'sks' this- input- post('sks')]; this- load- view('view-data-matakuliah', data);}}Dalam controller di atas, data yang diinput pada form input matakuliah di post kan dan dimasukan ke dalam variabel yang bertipe array yang diberi nama data dan variable array inimemiliki 3 komponen array yaitu kode, nama, sks. Kemudian nilai dari element-elementarray tadi akan dikirimkan kembali ke view dengan perintah this- load- view(‘view-datamatakuliah’, data). jadi kita

DAFTAR PUSTAKA .113. PERTEMUAN 1 PENJELASAN KONTRAK KULIAH, PENEGASAN TUGAS Deskripsi Pembelajaran Pada bab ini dijelaskan bagaimana proses pembelajaran berlangsung setiap pertemuannya . cara memasang dan menggunakan codeigniter, struktur dari codeigniter, file konfigurasi co