SlideShare a Scribd company logo
1 of 14
Download to read offline
Modul Praktikum Pemrograman Web 2 2022
1 | P a g e
MODUL 05. FRAMEWORK CODEIGNITER (CI)
10.1. Tujuan
1. Memberikan pemahaman kepada mahasiswa tentang framework.
2. Memberikan pemahaman kepada mahasiswa framework CodeIgniter.
3. Memberikan pemahaman kepada mahasiswa tentang konsep MVC (Model
View Controller) pada framework CodeIgniter.
4. Memberikan pemahaman kepada mahasiswa implementasi MVC dengan
menggunakan framework CodeIgniter.
10.2. DASAR TEORI
1. Pengertian Framework
framework itu bias dikatakan sebagia alat bantu yang dapat memudahkan dalam
mendesain sebuah aplikasi PHP. Framework telah menyediakan struktur aplikasi
yang baik berupa : standard coding, best practice dan design pattern. Programmer
yang menggunakan framework bisa langsung fokus kepada business process.
2. CodeIgniter
CodeIgniter adalah framework PHP dikembangkan oleh Rick Ellis dari Ellis Lab.
CI dirancang untuk menjadi sebuah web framework yang ringan dan mudah untuk
digunakan. Pengakuan dari Rasmus Lerdorf pencipta bahasa pemrograman PHP,
mengatakan bahwa CodeIgniter merupakan web framework mudah dan handal.
CodeIgniter memudahkan para developer untuk membangun sebuah aplikasi PHP
dinamis karena bersifat open source. CodeIgniter menyediakan kumpulan library
untuk tugas yang sering dilakukan dan sangat mudah untuk diakses.
3. Versi pada CodeIgniter
Saat modul ini dibuat (Mei 2020), CodeIgniter telah ada 3 versi :
a. CodeIgniter 2 (legacy)
Ini adalah versi original dari CI, rilis Januar 2011 dan berakhir Oktober 2015
b. CodeIgniter 3 (current)
Versi sekrang yang paling banya digunakan, didesign untuk PHP 5.6.+
c. CodeIgniter 4 (future)
Versi ini masih dalam tahap pengembangan, dibuat untuk PHP 7.2.
Modul Praktikum Pemrograman Web 2 2022
2 | P a g e
4. Istilah di CodeIgniter
a. Model, class PHP yang dirancang bekerja dengan informasi dari database
b. Controller, inti aplikasi yang menentukan penanganan HTTP request
c. View, halaman web seperti header, footer, sidebar dan lainnya yang
ditanamkan di halaman web. View tidak pernah dipanggil secara langsung.
View harus dipanggil dari controller
d. Library, class yang berisi fungsi – fungsi untuk penyelesaian kasus tertentu
e. Helper, pembantu tugas kategori tertentu terdiri dari kumpulan function.
f. Driver, library khusus yang mempunyai class induk dan beberapa class
turunan yang dapat digunakan untuk kasus terrtentu.
5. Cara Kerja MVC pada CodeIgniter
a index.php bertindak sebagai controller terdepan, dan menginisialisasi
resource yang diperlukan untuk menjalankan CodeIgniter
b Router memeriksa HTTP request untuk menentukan apa yang dikerjakan
c Jika cache file ada, maka akan ditampilkan langsung, dengan melewati
eksekusi normal sistem
d Sebelum memuat controller, HTTP request akan memeriksa apa yang
disubmit user dan memfilternya untuk keamanan
e Controller memuat model, core libraries, plugin, helper, dan resource lain
untuk memproses permintaan tertentu.
f View ditampilkan di browser sesuai proses yang dikerjakan controller. Jika
caching dijalankan, view akan dicache terlebih dahulu agar dapat
ditampilkan di request selanjutnya.
6. Struktur Direktori CodeIgniter
Di CodeIgniter terdapat hirarki yang dikepalai oleh tiga folder utama, yaitu :
application, system, dan user_guide.
a. Peranan folder application di CodeIgniter : menentukan halaman error,
membangun controller, membangun model, membangun views, konfigurasi
aplikasi web yang dibangun, membangun library sendiri, membangun
helper sendiri.
b. Peranan folder system di CodeIgniter : menyimpan library inti CodeIgniter
di folder core, menyimpan library dan driver untuk database di folder
database, menyimpan font di folder font, menyimpan kumpulan helper di
folder helpers, menyimpan fitur bahasa di folder language, menyimpan
berbagai library lainnya di folder libraries.
c. Peranan folder user_guide berisi file dokumentasi pengenalan CodeIgniter
tentang : pembahasan fitur umum CodeIgniter, penggunaan library, helper,
dan driver yang terdapat di CodeIgniter.
Modul Praktikum Pemrograman Web 2 2022
3 | P a g e
7. Controller pada CodeIgniter
Controller adalah perantara Model, View, dan resource lainya yang dibutuhkan
untuk menangani HTTP request dan menghasilkan halaman web.
Sebuah controller pada hakekatnya merupakan sebuah Class. Sesuai namanya
“Controller”, bagian ini bertugas mengontrol seluruh aplikasi menggunakan URI.
URI (Uniform Resource Identifier) membantu dalam mengambil data melalui URL
CodeIgniter. Cara penyebutan URI segment pada CodeIgniter misalnya segment
1, segment 2, segment 3 dan seterusnya.
Segment 1 pada codeigniter adalah nama class atau controller yang sedang
dijalankan. Segment ke 2 adalah nama method atau function pada class/controller.
Segment 3 berupa data berbentuk id yang dikirim.
Berikut tampilan controller Welcome yang terletak di folder applicationcontrollers:
Pada file controller Welcome didefinisikan sebuah class yang bernama Welcome.
Nama class itu juga sebaga nama controllernya. Class Welcome memiliki method
dengan nama index.
Berikut tampilan di browser yang mengakses controller Welcome :
Beberapa hal yang harus diperhatikan dalam pembuatan controller :
✓ Nama dari sebuah Class Controller harus diawali dengan huruf besar.
✓ Pada URI Class Controller harus dipanggil menggunakan huruf kecil.
✓ Jangan menggunakan nama yang sama antara nama Class dengan nama
Method, karena akan mengakibatkan fungsi Parent Class di overwrite.
Modul Praktikum Pemrograman Web 2 2022
4 | P a g e
8. View pada CodeIgniter
View adalah bagian yang mengatur tampilan ke pengguna.
Pada bagian view yang merupakan presentation layer, kita dapat membuat
sebuah tampilan yang sederhana atau kompleks. View juga dapat berupa bagian-
bagian sederhana seperti header, footer, menu atau lainnya. View ini tidak dapat
diakses secara langsung, melainkan harus dipanggil melalui sebuah Controller.
Sebuah file view dapat dipanggil melalui Controller dengan kode di bawah ini:
dan jika anda ingin mengakses file-file view yang ada di dalam sebuah direktori,
maka bentuk kode yang harus dijalankan adalah sebagai berikut :
Kita tidak perlu menambahkan ekstensi file “.php”, kecuali kita membuat file view
yang berekstensi selain php.
9. Model pada
Model menggambarkan struktur data. Biasanya kelas model akan berisi fungsi
yang digunakan untuk mengambil, menambah, dan memperbaharui informasi
yang ada di database.
Model berisi class dan fungsi seperti Controller. Pemanggilan Model hampir sama
dengan pemanggilan View, namun perbedaannya dalam pemanggilan model
dilakukan dengan pemanggilan fungsi.
Model tidak dapat diakses secara langsung, melainkan harus dipanggil melalui
sebuah Controller. Sebuah file Model dapat dipanggil melalui Controller dengan
kode di bawah ini :
Dari kode tersebut, berarti controller akan memanggil file mlatihan.php di direktori
system/application/models/.
Kode tersebut akan menjalankan method getData pada class mlatihan yang di di
Model mlatihan.
Modul Praktikum Pemrograman Web 2 2022
5 | P a g e
10.3. PELAKSANAAN PRAKTIKUM
1. Praktikum membuat Controller di CodeIgniter
➢ Download versi Codeigniter 3.x terbaru di https://codeigniter.com
➢ Ekstrak file “bcit-ci-CodeIgniter-3.x” ke folder “htdocs”
➢ Ubah Nama folder “bcit-ci-CodeIgniter-3.x” menjadi nim Anda, misalnya
1705041234
➢ Jalankan XAMPP. Start Apache dan MySQL
➢ Buat file baru di folder C:xampphtdocsnim_Andaapplicationcontrollers
simpan dengan nama belajar.php Ketikkan script berikut :
➢ Akses browser http://localhost/1705041234/index.php/belajar/index
➢ Berikut tampilan yang diharapkan :
➢ Akses browser http://localhost/1705041234/index.php/belajar/halo
➢ Berikut tampilan yang diharapkan :
Modul Praktikum Pemrograman Web 2 2022
6 | P a g e
2. Praktikum mengganti default controller
➢ Akses direktori : application/config. Buka file routes.php
➢ Ubah pengaturan default_controller yang tadinya welcome menjadi belajar
➢ Akses browser http://localhost/1705041234
3. Praktikum membuat View di CodeIgniter
➢ Buka direktori C:xampphtdocsnim_Andaapplicationviews. Buat file baru
dengan nama view_belajar.php Ketikkan script berikut :
➢ Buka kembali file belajar.php pada folder controller. Edit file tersebut :
Modul Praktikum Pemrograman Web 2 2022
7 | P a g e
➢ Akses browser http://localhost/1705041234/index.php/belajar/sinau
➢ Berikut tampilan yang diharapkan :
4. Praktikum membuat View dan array di CodeIgniter
➢ Buka direktori C:xampphtdocsnim_Andaapplicationviews.
➢ Buat file baru dengan nama view_belajar2.php Ketikkan script berikut :
➢ Buka kembali file belajar.php pada folder controller.
➢ Tambahkan function sinau2()
➢ Akses browser http://localhost/1705041234/index.php/belajar/sinau2
➢ Berikut tampilan yang diharapkan :
Modul Praktikum Pemrograman Web 2 2022
8 | P a g e
5. Praktikum membuat Model dan array di CodeIgniter
➢ Buatlah database dengan nama biodata, dengan struktur tabel berikut :
➢ Isikan dengan data Anda :
➢ Buka file config database.php yang terletak di application/config/
➢ Sesuaikan menjadi seperti berikut :
➢ Buka file config autoload.php yang terletak di application/config/
➢ Cari pengaturan yang mengarah ke load library codeigniter seperti berikut :
➢ Kemudian tambahkan database. Dan akan menjadi seperti berikut :
➢ Buka direktori application/models/. Buat file dengan nama m_data.php
➢ Ketikkan script berikut :
Modul Praktikum Pemrograman Web 2 2022
9 | P a g e
➢ Buka direktori application/controllers/. Buat file dengan nama belajar2.php
➢ Ketikkan script berikut :
➢ Buka direktori application/views/. Buat file dengan nama v_user.php
➢ Ketikkan script berikut :
➢ Buka browser : http://localhost/1705041234/index.php/belajar2/user
Modul Praktikum Pemrograman Web 2 2022
10 | P a g e
10.4. Latihan
1. Latihan Membuat CRUD di CodeIgniter ( bagian tampil data )
➢ Buka direktori application/controllers/. Buat file dengan nama crud.php
➢ Buka direktori application/models/. Buat file dengan nama m_crud.php
➢ Buka direktori application/views/. Buat file dengan nama m_tampil.php
Modul Praktikum Pemrograman Web 2 2022
11 | P a g e
➢ Buka browser : http://localhost/1705041234/index.php/crud/
➢ Berikut tampilan nya :
2. Latihan Membuat CRUD di CodeIgniter ( bagian input data )
➢ Buka direktori application/controllers/. Buka file dengan nama crud.php
➢ Tambahkan method tambah() seperti berikut :
➢ Buka direktori application/views/. Buat file dengan nama v_input.php
➢ Buka direktori application/controllers/. Buka file dengan nama crud.php
➢ Tambahkan method tambah_aksi() seperti berikut :
Modul Praktikum Pemrograman Web 2 2022
12 | P a g e
➢ Buka direktori application/models/. Buka file dengan nama m_crud.php
➢ Berikut tampilan input data :
Modul Praktikum Pemrograman Web 2 2022
13 | P a g e
3. Latihan Membuat CRUD di CodeIgniter ( bagian hapus data )
➢ Buka direktori application/controllers/. Buka file dengan nama crud.php
➢ Tambahkan method hapus() seperti berikut :
➢ Buka direktori application/models/. Buka file dengan nama m_crud.php
➢ Tambahkan method hapus_data seperti berikut :
➢ Jalankan menu hapus data dari browser.
4. Latihan Membuat CRUD di CodeIgniter ( bagian update data )
➢ Buka direktori application/controllers/. Buka file dengan nama crud.php
➢ Tambahkan method edit() seperti berikut :
➢ Buka direktori application/models/. Buka file dengan nama m_crud.php
➢ Tambahkan method edit_data seperti berikut :
Modul Praktikum Pemrograman Web 2 2022
14 | P a g e
➢ Buka direktori application/views/. Buat file dengan nama v_edit.php
➢ Buka direktori application/controllers/. Buka file dengan nama crud.php
➢ Tambahkan method update() seperti berikut :
➢ Buka direktori application/models/. Buka file dengan nama m_crud.php
➢ Tambahkan method update_data seperti berikut :
➢ Jalankan menu update data dari browser.

More Related Content

What's hot

FORMAT ATP 2022-KONSENTRASI KEAHLIAN.doc
FORMAT ATP 2022-KONSENTRASI KEAHLIAN.docFORMAT ATP 2022-KONSENTRASI KEAHLIAN.doc
FORMAT ATP 2022-KONSENTRASI KEAHLIAN.docAhmadWildanListyanto
 
Repositori Institusi di Perguruan Tinggi (Sebuah Inisiasi)
Repositori Institusi di Perguruan Tinggi (Sebuah Inisiasi)Repositori Institusi di Perguruan Tinggi (Sebuah Inisiasi)
Repositori Institusi di Perguruan Tinggi (Sebuah Inisiasi)Dwi Fajar Saputra
 
SKRIPSI APLIKASI TOKO ONLINE SISTEM LELANG
SKRIPSI   APLIKASI TOKO ONLINE SISTEM LELANG SKRIPSI   APLIKASI TOKO ONLINE SISTEM LELANG
SKRIPSI APLIKASI TOKO ONLINE SISTEM LELANG Een Pahlefi
 
Pemodelan berorientasi objek
Pemodelan berorientasi objekPemodelan berorientasi objek
Pemodelan berorientasi objekAdhikara Asmoro
 
Materi PWPB XI - teknologi aplikasi web
Materi PWPB XI - teknologi aplikasi web Materi PWPB XI - teknologi aplikasi web
Materi PWPB XI - teknologi aplikasi web Hernowo Indra Gunanto
 
Kriptografi, Enkripsi dan Dekripsi
Kriptografi, Enkripsi dan DekripsiKriptografi, Enkripsi dan Dekripsi
Kriptografi, Enkripsi dan DekripsiFarichah Riha
 
10.2 dasar dasar dkv suhendi hendi
10.2 dasar dasar dkv suhendi hendi10.2 dasar dasar dkv suhendi hendi
10.2 dasar dasar dkv suhendi hendiSuhendiSuhendi10
 
tugas microsoft power point
tugas microsoft power pointtugas microsoft power point
tugas microsoft power pointimamnurriezki
 
Bahan presentasi-finger-print
Bahan presentasi-finger-printBahan presentasi-finger-print
Bahan presentasi-finger-printRhiio Edogawa
 
SOAL ESSAY HOTS KOMPUTER JARINGAN DASAR KELAS X MULTIMEDIA
SOAL ESSAY HOTS KOMPUTER JARINGAN DASAR KELAS X MULTIMEDIASOAL ESSAY HOTS KOMPUTER JARINGAN DASAR KELAS X MULTIMEDIA
SOAL ESSAY HOTS KOMPUTER JARINGAN DASAR KELAS X MULTIMEDIASMK MUhammadiyah Singkut
 
Kerangka Acuan Kerja (KAK) Sistem Aplikasi Pelaporan Keluhan
Kerangka Acuan Kerja (KAK) Sistem Aplikasi Pelaporan KeluhanKerangka Acuan Kerja (KAK) Sistem Aplikasi Pelaporan Keluhan
Kerangka Acuan Kerja (KAK) Sistem Aplikasi Pelaporan Keluhansafiravanillia
 
Ppt big data dina nisrina rosandi 6018210043
Ppt big data dina nisrina rosandi 6018210043Ppt big data dina nisrina rosandi 6018210043
Ppt big data dina nisrina rosandi 6018210043DinaNisrinaRosandi
 
Soal Essay UAS Dasar Desain Grafis Kelas X Multimedia
Soal Essay UAS Dasar Desain Grafis Kelas X MultimediaSoal Essay UAS Dasar Desain Grafis Kelas X Multimedia
Soal Essay UAS Dasar Desain Grafis Kelas X MultimediaSMK MUhammadiyah Singkut
 
4. tools proyek data science dts ta v.2
4. tools proyek data science dts ta v.24. tools proyek data science dts ta v.2
4. tools proyek data science dts ta v.2ArdianDwiPraba
 

What's hot (20)

Modul Laravel
Modul Laravel Modul Laravel
Modul Laravel
 
FORMAT ATP 2022-KONSENTRASI KEAHLIAN.doc
FORMAT ATP 2022-KONSENTRASI KEAHLIAN.docFORMAT ATP 2022-KONSENTRASI KEAHLIAN.doc
FORMAT ATP 2022-KONSENTRASI KEAHLIAN.doc
 
Repositori Institusi di Perguruan Tinggi (Sebuah Inisiasi)
Repositori Institusi di Perguruan Tinggi (Sebuah Inisiasi)Repositori Institusi di Perguruan Tinggi (Sebuah Inisiasi)
Repositori Institusi di Perguruan Tinggi (Sebuah Inisiasi)
 
Kompetensi dasar 3.1 Dasar Desain Grafis
Kompetensi dasar 3.1 Dasar Desain GrafisKompetensi dasar 3.1 Dasar Desain Grafis
Kompetensi dasar 3.1 Dasar Desain Grafis
 
SKRIPSI APLIKASI TOKO ONLINE SISTEM LELANG
SKRIPSI   APLIKASI TOKO ONLINE SISTEM LELANG SKRIPSI   APLIKASI TOKO ONLINE SISTEM LELANG
SKRIPSI APLIKASI TOKO ONLINE SISTEM LELANG
 
Pemodelan berorientasi objek
Pemodelan berorientasi objekPemodelan berorientasi objek
Pemodelan berorientasi objek
 
Modul 2 powtoon
Modul 2 powtoonModul 2 powtoon
Modul 2 powtoon
 
Materi PWPB XI - teknologi aplikasi web
Materi PWPB XI - teknologi aplikasi web Materi PWPB XI - teknologi aplikasi web
Materi PWPB XI - teknologi aplikasi web
 
PPT CANVA.pdf
PPT CANVA.pdfPPT CANVA.pdf
PPT CANVA.pdf
 
Kriptografi, Enkripsi dan Dekripsi
Kriptografi, Enkripsi dan DekripsiKriptografi, Enkripsi dan Dekripsi
Kriptografi, Enkripsi dan Dekripsi
 
10.2 dasar dasar dkv suhendi hendi
10.2 dasar dasar dkv suhendi hendi10.2 dasar dasar dkv suhendi hendi
10.2 dasar dasar dkv suhendi hendi
 
tugas microsoft power point
tugas microsoft power pointtugas microsoft power point
tugas microsoft power point
 
Bahan presentasi-finger-print
Bahan presentasi-finger-printBahan presentasi-finger-print
Bahan presentasi-finger-print
 
SOAL ESSAY HOTS KOMPUTER JARINGAN DASAR KELAS X MULTIMEDIA
SOAL ESSAY HOTS KOMPUTER JARINGAN DASAR KELAS X MULTIMEDIASOAL ESSAY HOTS KOMPUTER JARINGAN DASAR KELAS X MULTIMEDIA
SOAL ESSAY HOTS KOMPUTER JARINGAN DASAR KELAS X MULTIMEDIA
 
Pertemuan 1 Sistem Basis Data.pptx
Pertemuan 1 Sistem Basis Data.pptxPertemuan 1 Sistem Basis Data.pptx
Pertemuan 1 Sistem Basis Data.pptx
 
Kerangka Acuan Kerja (KAK) Sistem Aplikasi Pelaporan Keluhan
Kerangka Acuan Kerja (KAK) Sistem Aplikasi Pelaporan KeluhanKerangka Acuan Kerja (KAK) Sistem Aplikasi Pelaporan Keluhan
Kerangka Acuan Kerja (KAK) Sistem Aplikasi Pelaporan Keluhan
 
Ppt big data dina nisrina rosandi 6018210043
Ppt big data dina nisrina rosandi 6018210043Ppt big data dina nisrina rosandi 6018210043
Ppt big data dina nisrina rosandi 6018210043
 
Soal Essay UAS Dasar Desain Grafis Kelas X Multimedia
Soal Essay UAS Dasar Desain Grafis Kelas X MultimediaSoal Essay UAS Dasar Desain Grafis Kelas X Multimedia
Soal Essay UAS Dasar Desain Grafis Kelas X Multimedia
 
4. tools proyek data science dts ta v.2
4. tools proyek data science dts ta v.24. tools proyek data science dts ta v.2
4. tools proyek data science dts ta v.2
 
Bab iv ragam dialog
Bab iv ragam dialogBab iv ragam dialog
Bab iv ragam dialog
 

Similar to Modul 05 Framework CodeIgniter.pdf

Modul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdfModul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdfSetiya Nugroho
 
Modul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdfModul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdfSetiya Nugroho
 
Membangun Aplikasi SMS dengan Gammu dan PHP Framework CodeIgniter
Membangun Aplikasi SMS dengan Gammu dan PHP Framework CodeIgniterMembangun Aplikasi SMS dengan Gammu dan PHP Framework CodeIgniter
Membangun Aplikasi SMS dengan Gammu dan PHP Framework CodeIgniterBeni Krisbiantoro
 
Modul Pelatihan CodeIgniter Dasar
Modul Pelatihan CodeIgniter DasarModul Pelatihan CodeIgniter Dasar
Modul Pelatihan CodeIgniter DasarRidwan Fadjar
 
Tutorial ci
Tutorial ciTutorial ci
Tutorial ciWira Hul
 
Materi-bab1.pptx
Materi-bab1.pptxMateri-bab1.pptx
Materi-bab1.pptxAhmadFaid4
 
Jamal aplikasicrud
Jamal aplikasicrudJamal aplikasicrud
Jamal aplikasicrudmales Aja
 
Modul1 Penjelasan Mengenai Codeigniter
Modul1 Penjelasan Mengenai CodeigniterModul1 Penjelasan Mengenai Codeigniter
Modul1 Penjelasan Mengenai CodeigniterRiki Afriansyah
 
Chapter 1 perkenalan code igniter 2.0
Chapter 1 perkenalan code igniter 2.0Chapter 1 perkenalan code igniter 2.0
Chapter 1 perkenalan code igniter 2.0Andarias Jacob Calvyn
 
Slide struktur codeigneter
Slide struktur codeigneterSlide struktur codeigneter
Slide struktur codeigneterCecilia Cintahta
 
Codeigneter | Annisa Nur Fitriyani
Codeigneter | Annisa Nur FitriyaniCodeigneter | Annisa Nur Fitriyani
Codeigneter | Annisa Nur FitriyaniAnnisa Nur Fitriyani
 
Apa Itu Framework CodeIgniter?
Apa Itu Framework CodeIgniter?Apa Itu Framework CodeIgniter?
Apa Itu Framework CodeIgniter?jundi26
 
Tugas topik khusus
Tugas topik khususTugas topik khusus
Tugas topik khususwardandha
 
Codeigniter framewrok
Codeigniter framewrokCodeigniter framewrok
Codeigniter framewrokmuamarsidik
 

Similar to Modul 05 Framework CodeIgniter.pdf (20)

Modul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdfModul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdf
 
Modul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdfModul 02 CRUD CI 3.pdf
Modul 02 CRUD CI 3.pdf
 
Membangun Aplikasi SMS dengan Gammu dan PHP Framework CodeIgniter
Membangun Aplikasi SMS dengan Gammu dan PHP Framework CodeIgniterMembangun Aplikasi SMS dengan Gammu dan PHP Framework CodeIgniter
Membangun Aplikasi SMS dengan Gammu dan PHP Framework CodeIgniter
 
Modul Pelatihan CodeIgniter Dasar
Modul Pelatihan CodeIgniter DasarModul Pelatihan CodeIgniter Dasar
Modul Pelatihan CodeIgniter Dasar
 
Tutorial ci
Tutorial ciTutorial ci
Tutorial ci
 
Materi-bab1.pptx
Materi-bab1.pptxMateri-bab1.pptx
Materi-bab1.pptx
 
Pengenalan Codeigniter
Pengenalan Codeigniter Pengenalan Codeigniter
Pengenalan Codeigniter
 
Jamal aplikasicrud
Jamal aplikasicrudJamal aplikasicrud
Jamal aplikasicrud
 
Modul1 Penjelasan Mengenai Codeigniter
Modul1 Penjelasan Mengenai CodeigniterModul1 Penjelasan Mengenai Codeigniter
Modul1 Penjelasan Mengenai Codeigniter
 
Chapter 1 perkenalan code igniter 2.0
Chapter 1 perkenalan code igniter 2.0Chapter 1 perkenalan code igniter 2.0
Chapter 1 perkenalan code igniter 2.0
 
Slide struktur codeigneter
Slide struktur codeigneterSlide struktur codeigneter
Slide struktur codeigneter
 
Kelompok 7
Kelompok 7Kelompok 7
Kelompok 7
 
Tutorial ci
Tutorial ciTutorial ci
Tutorial ci
 
Codeigneter | Annisa Nur Fitriyani
Codeigneter | Annisa Nur FitriyaniCodeigneter | Annisa Nur Fitriyani
Codeigneter | Annisa Nur Fitriyani
 
Apa Itu Framework CodeIgniter?
Apa Itu Framework CodeIgniter?Apa Itu Framework CodeIgniter?
Apa Itu Framework CodeIgniter?
 
Tugas ke 1
Tugas ke 1Tugas ke 1
Tugas ke 1
 
Tugas topik khusus
Tugas topik khususTugas topik khusus
Tugas topik khusus
 
Pengenalan code igniter
Pengenalan code igniterPengenalan code igniter
Pengenalan code igniter
 
Codeigniter framewrok
Codeigniter framewrokCodeigniter framewrok
Codeigniter framewrok
 
Pengenalan Framework CodeIgniter
Pengenalan Framework CodeIgniterPengenalan Framework CodeIgniter
Pengenalan Framework CodeIgniter
 

More from Setiya Nugroho

Web-based culinary tourism recommendation system
Web-based culinary tourism recommendation systemWeb-based culinary tourism recommendation system
Web-based culinary tourism recommendation systemSetiya Nugroho
 
Network Automation.pdf
Network Automation.pdfNetwork Automation.pdf
Network Automation.pdfSetiya Nugroho
 
RPS 2022-Pemrograman Web 2.pdf
RPS 2022-Pemrograman Web 2.pdfRPS 2022-Pemrograman Web 2.pdf
RPS 2022-Pemrograman Web 2.pdfSetiya Nugroho
 
3. Basic Pentesting 1 Walkthrough.pdf
3. Basic Pentesting 1 Walkthrough.pdf3. Basic Pentesting 1 Walkthrough.pdf
3. Basic Pentesting 1 Walkthrough.pdfSetiya Nugroho
 
Basic Cryptography.pdf
Basic Cryptography.pdfBasic Cryptography.pdf
Basic Cryptography.pdfSetiya Nugroho
 
Access Control Fundamentals
Access Control FundamentalsAccess Control Fundamentals
Access Control FundamentalsSetiya Nugroho
 
case study1 web defacement answer.pdf
case study1 web defacement answer.pdfcase study1 web defacement answer.pdf
case study1 web defacement answer.pdfSetiya Nugroho
 
WEEK5 Mobile Device Security 31032022.pdf
WEEK5 Mobile Device Security 31032022.pdfWEEK5 Mobile Device Security 31032022.pdf
WEEK5 Mobile Device Security 31032022.pdfSetiya Nugroho
 
Modul 4 Web Programming HTML Form & Hyperlink.pdf
Modul 4 Web Programming HTML Form & Hyperlink.pdfModul 4 Web Programming HTML Form & Hyperlink.pdf
Modul 4 Web Programming HTML Form & Hyperlink.pdfSetiya Nugroho
 

More from Setiya Nugroho (12)

Web-based culinary tourism recommendation system
Web-based culinary tourism recommendation systemWeb-based culinary tourism recommendation system
Web-based culinary tourism recommendation system
 
Network Automation.pdf
Network Automation.pdfNetwork Automation.pdf
Network Automation.pdf
 
RPS 2022-Pemrograman Web 2.pdf
RPS 2022-Pemrograman Web 2.pdfRPS 2022-Pemrograman Web 2.pdf
RPS 2022-Pemrograman Web 2.pdf
 
10. Data Security.pdf
10. Data Security.pdf10. Data Security.pdf
10. Data Security.pdf
 
3. Basic Pentesting 1 Walkthrough.pdf
3. Basic Pentesting 1 Walkthrough.pdf3. Basic Pentesting 1 Walkthrough.pdf
3. Basic Pentesting 1 Walkthrough.pdf
 
Basic Cryptography.pdf
Basic Cryptography.pdfBasic Cryptography.pdf
Basic Cryptography.pdf
 
Web Programming Form
Web Programming FormWeb Programming Form
Web Programming Form
 
Access Control Fundamentals
Access Control FundamentalsAccess Control Fundamentals
Access Control Fundamentals
 
case study1 web defacement answer.pdf
case study1 web defacement answer.pdfcase study1 web defacement answer.pdf
case study1 web defacement answer.pdf
 
WEEK5 Mobile Device Security 31032022.pdf
WEEK5 Mobile Device Security 31032022.pdfWEEK5 Mobile Device Security 31032022.pdf
WEEK5 Mobile Device Security 31032022.pdf
 
Malware
MalwareMalware
Malware
 
Modul 4 Web Programming HTML Form & Hyperlink.pdf
Modul 4 Web Programming HTML Form & Hyperlink.pdfModul 4 Web Programming HTML Form & Hyperlink.pdf
Modul 4 Web Programming HTML Form & Hyperlink.pdf
 

Modul 05 Framework CodeIgniter.pdf

  • 1. Modul Praktikum Pemrograman Web 2 2022 1 | P a g e MODUL 05. FRAMEWORK CODEIGNITER (CI) 10.1. Tujuan 1. Memberikan pemahaman kepada mahasiswa tentang framework. 2. Memberikan pemahaman kepada mahasiswa framework CodeIgniter. 3. Memberikan pemahaman kepada mahasiswa tentang konsep MVC (Model View Controller) pada framework CodeIgniter. 4. Memberikan pemahaman kepada mahasiswa implementasi MVC dengan menggunakan framework CodeIgniter. 10.2. DASAR TEORI 1. Pengertian Framework framework itu bias dikatakan sebagia alat bantu yang dapat memudahkan dalam mendesain sebuah aplikasi PHP. Framework telah menyediakan struktur aplikasi yang baik berupa : standard coding, best practice dan design pattern. Programmer yang menggunakan framework bisa langsung fokus kepada business process. 2. CodeIgniter CodeIgniter adalah framework PHP dikembangkan oleh Rick Ellis dari Ellis Lab. CI dirancang untuk menjadi sebuah web framework yang ringan dan mudah untuk digunakan. Pengakuan dari Rasmus Lerdorf pencipta bahasa pemrograman PHP, mengatakan bahwa CodeIgniter merupakan web framework mudah dan handal. CodeIgniter memudahkan para developer untuk membangun sebuah aplikasi PHP dinamis karena bersifat open source. CodeIgniter menyediakan kumpulan library untuk tugas yang sering dilakukan dan sangat mudah untuk diakses. 3. Versi pada CodeIgniter Saat modul ini dibuat (Mei 2020), CodeIgniter telah ada 3 versi : a. CodeIgniter 2 (legacy) Ini adalah versi original dari CI, rilis Januar 2011 dan berakhir Oktober 2015 b. CodeIgniter 3 (current) Versi sekrang yang paling banya digunakan, didesign untuk PHP 5.6.+ c. CodeIgniter 4 (future) Versi ini masih dalam tahap pengembangan, dibuat untuk PHP 7.2.
  • 2. Modul Praktikum Pemrograman Web 2 2022 2 | P a g e 4. Istilah di CodeIgniter a. Model, class PHP yang dirancang bekerja dengan informasi dari database b. Controller, inti aplikasi yang menentukan penanganan HTTP request c. View, halaman web seperti header, footer, sidebar dan lainnya yang ditanamkan di halaman web. View tidak pernah dipanggil secara langsung. View harus dipanggil dari controller d. Library, class yang berisi fungsi – fungsi untuk penyelesaian kasus tertentu e. Helper, pembantu tugas kategori tertentu terdiri dari kumpulan function. f. Driver, library khusus yang mempunyai class induk dan beberapa class turunan yang dapat digunakan untuk kasus terrtentu. 5. Cara Kerja MVC pada CodeIgniter a index.php bertindak sebagai controller terdepan, dan menginisialisasi resource yang diperlukan untuk menjalankan CodeIgniter b Router memeriksa HTTP request untuk menentukan apa yang dikerjakan c Jika cache file ada, maka akan ditampilkan langsung, dengan melewati eksekusi normal sistem d Sebelum memuat controller, HTTP request akan memeriksa apa yang disubmit user dan memfilternya untuk keamanan e Controller memuat model, core libraries, plugin, helper, dan resource lain untuk memproses permintaan tertentu. f View ditampilkan di browser sesuai proses yang dikerjakan controller. Jika caching dijalankan, view akan dicache terlebih dahulu agar dapat ditampilkan di request selanjutnya. 6. Struktur Direktori CodeIgniter Di CodeIgniter terdapat hirarki yang dikepalai oleh tiga folder utama, yaitu : application, system, dan user_guide. a. Peranan folder application di CodeIgniter : menentukan halaman error, membangun controller, membangun model, membangun views, konfigurasi aplikasi web yang dibangun, membangun library sendiri, membangun helper sendiri. b. Peranan folder system di CodeIgniter : menyimpan library inti CodeIgniter di folder core, menyimpan library dan driver untuk database di folder database, menyimpan font di folder font, menyimpan kumpulan helper di folder helpers, menyimpan fitur bahasa di folder language, menyimpan berbagai library lainnya di folder libraries. c. Peranan folder user_guide berisi file dokumentasi pengenalan CodeIgniter tentang : pembahasan fitur umum CodeIgniter, penggunaan library, helper, dan driver yang terdapat di CodeIgniter.
  • 3. Modul Praktikum Pemrograman Web 2 2022 3 | P a g e 7. Controller pada CodeIgniter Controller adalah perantara Model, View, dan resource lainya yang dibutuhkan untuk menangani HTTP request dan menghasilkan halaman web. Sebuah controller pada hakekatnya merupakan sebuah Class. Sesuai namanya “Controller”, bagian ini bertugas mengontrol seluruh aplikasi menggunakan URI. URI (Uniform Resource Identifier) membantu dalam mengambil data melalui URL CodeIgniter. Cara penyebutan URI segment pada CodeIgniter misalnya segment 1, segment 2, segment 3 dan seterusnya. Segment 1 pada codeigniter adalah nama class atau controller yang sedang dijalankan. Segment ke 2 adalah nama method atau function pada class/controller. Segment 3 berupa data berbentuk id yang dikirim. Berikut tampilan controller Welcome yang terletak di folder applicationcontrollers: Pada file controller Welcome didefinisikan sebuah class yang bernama Welcome. Nama class itu juga sebaga nama controllernya. Class Welcome memiliki method dengan nama index. Berikut tampilan di browser yang mengakses controller Welcome : Beberapa hal yang harus diperhatikan dalam pembuatan controller : ✓ Nama dari sebuah Class Controller harus diawali dengan huruf besar. ✓ Pada URI Class Controller harus dipanggil menggunakan huruf kecil. ✓ Jangan menggunakan nama yang sama antara nama Class dengan nama Method, karena akan mengakibatkan fungsi Parent Class di overwrite.
  • 4. Modul Praktikum Pemrograman Web 2 2022 4 | P a g e 8. View pada CodeIgniter View adalah bagian yang mengatur tampilan ke pengguna. Pada bagian view yang merupakan presentation layer, kita dapat membuat sebuah tampilan yang sederhana atau kompleks. View juga dapat berupa bagian- bagian sederhana seperti header, footer, menu atau lainnya. View ini tidak dapat diakses secara langsung, melainkan harus dipanggil melalui sebuah Controller. Sebuah file view dapat dipanggil melalui Controller dengan kode di bawah ini: dan jika anda ingin mengakses file-file view yang ada di dalam sebuah direktori, maka bentuk kode yang harus dijalankan adalah sebagai berikut : Kita tidak perlu menambahkan ekstensi file “.php”, kecuali kita membuat file view yang berekstensi selain php. 9. Model pada Model menggambarkan struktur data. Biasanya kelas model akan berisi fungsi yang digunakan untuk mengambil, menambah, dan memperbaharui informasi yang ada di database. Model berisi class dan fungsi seperti Controller. Pemanggilan Model hampir sama dengan pemanggilan View, namun perbedaannya dalam pemanggilan model dilakukan dengan pemanggilan fungsi. Model tidak dapat diakses secara langsung, melainkan harus dipanggil melalui sebuah Controller. Sebuah file Model dapat dipanggil melalui Controller dengan kode di bawah ini : Dari kode tersebut, berarti controller akan memanggil file mlatihan.php di direktori system/application/models/. Kode tersebut akan menjalankan method getData pada class mlatihan yang di di Model mlatihan.
  • 5. Modul Praktikum Pemrograman Web 2 2022 5 | P a g e 10.3. PELAKSANAAN PRAKTIKUM 1. Praktikum membuat Controller di CodeIgniter ➢ Download versi Codeigniter 3.x terbaru di https://codeigniter.com ➢ Ekstrak file “bcit-ci-CodeIgniter-3.x” ke folder “htdocs” ➢ Ubah Nama folder “bcit-ci-CodeIgniter-3.x” menjadi nim Anda, misalnya 1705041234 ➢ Jalankan XAMPP. Start Apache dan MySQL ➢ Buat file baru di folder C:xampphtdocsnim_Andaapplicationcontrollers simpan dengan nama belajar.php Ketikkan script berikut : ➢ Akses browser http://localhost/1705041234/index.php/belajar/index ➢ Berikut tampilan yang diharapkan : ➢ Akses browser http://localhost/1705041234/index.php/belajar/halo ➢ Berikut tampilan yang diharapkan :
  • 6. Modul Praktikum Pemrograman Web 2 2022 6 | P a g e 2. Praktikum mengganti default controller ➢ Akses direktori : application/config. Buka file routes.php ➢ Ubah pengaturan default_controller yang tadinya welcome menjadi belajar ➢ Akses browser http://localhost/1705041234 3. Praktikum membuat View di CodeIgniter ➢ Buka direktori C:xampphtdocsnim_Andaapplicationviews. Buat file baru dengan nama view_belajar.php Ketikkan script berikut : ➢ Buka kembali file belajar.php pada folder controller. Edit file tersebut :
  • 7. Modul Praktikum Pemrograman Web 2 2022 7 | P a g e ➢ Akses browser http://localhost/1705041234/index.php/belajar/sinau ➢ Berikut tampilan yang diharapkan : 4. Praktikum membuat View dan array di CodeIgniter ➢ Buka direktori C:xampphtdocsnim_Andaapplicationviews. ➢ Buat file baru dengan nama view_belajar2.php Ketikkan script berikut : ➢ Buka kembali file belajar.php pada folder controller. ➢ Tambahkan function sinau2() ➢ Akses browser http://localhost/1705041234/index.php/belajar/sinau2 ➢ Berikut tampilan yang diharapkan :
  • 8. Modul Praktikum Pemrograman Web 2 2022 8 | P a g e 5. Praktikum membuat Model dan array di CodeIgniter ➢ Buatlah database dengan nama biodata, dengan struktur tabel berikut : ➢ Isikan dengan data Anda : ➢ Buka file config database.php yang terletak di application/config/ ➢ Sesuaikan menjadi seperti berikut : ➢ Buka file config autoload.php yang terletak di application/config/ ➢ Cari pengaturan yang mengarah ke load library codeigniter seperti berikut : ➢ Kemudian tambahkan database. Dan akan menjadi seperti berikut : ➢ Buka direktori application/models/. Buat file dengan nama m_data.php ➢ Ketikkan script berikut :
  • 9. Modul Praktikum Pemrograman Web 2 2022 9 | P a g e ➢ Buka direktori application/controllers/. Buat file dengan nama belajar2.php ➢ Ketikkan script berikut : ➢ Buka direktori application/views/. Buat file dengan nama v_user.php ➢ Ketikkan script berikut : ➢ Buka browser : http://localhost/1705041234/index.php/belajar2/user
  • 10. Modul Praktikum Pemrograman Web 2 2022 10 | P a g e 10.4. Latihan 1. Latihan Membuat CRUD di CodeIgniter ( bagian tampil data ) ➢ Buka direktori application/controllers/. Buat file dengan nama crud.php ➢ Buka direktori application/models/. Buat file dengan nama m_crud.php ➢ Buka direktori application/views/. Buat file dengan nama m_tampil.php
  • 11. Modul Praktikum Pemrograman Web 2 2022 11 | P a g e ➢ Buka browser : http://localhost/1705041234/index.php/crud/ ➢ Berikut tampilan nya : 2. Latihan Membuat CRUD di CodeIgniter ( bagian input data ) ➢ Buka direktori application/controllers/. Buka file dengan nama crud.php ➢ Tambahkan method tambah() seperti berikut : ➢ Buka direktori application/views/. Buat file dengan nama v_input.php ➢ Buka direktori application/controllers/. Buka file dengan nama crud.php ➢ Tambahkan method tambah_aksi() seperti berikut :
  • 12. Modul Praktikum Pemrograman Web 2 2022 12 | P a g e ➢ Buka direktori application/models/. Buka file dengan nama m_crud.php ➢ Berikut tampilan input data :
  • 13. Modul Praktikum Pemrograman Web 2 2022 13 | P a g e 3. Latihan Membuat CRUD di CodeIgniter ( bagian hapus data ) ➢ Buka direktori application/controllers/. Buka file dengan nama crud.php ➢ Tambahkan method hapus() seperti berikut : ➢ Buka direktori application/models/. Buka file dengan nama m_crud.php ➢ Tambahkan method hapus_data seperti berikut : ➢ Jalankan menu hapus data dari browser. 4. Latihan Membuat CRUD di CodeIgniter ( bagian update data ) ➢ Buka direktori application/controllers/. Buka file dengan nama crud.php ➢ Tambahkan method edit() seperti berikut : ➢ Buka direktori application/models/. Buka file dengan nama m_crud.php ➢ Tambahkan method edit_data seperti berikut :
  • 14. Modul Praktikum Pemrograman Web 2 2022 14 | P a g e ➢ Buka direktori application/views/. Buat file dengan nama v_edit.php ➢ Buka direktori application/controllers/. Buka file dengan nama crud.php ➢ Tambahkan method update() seperti berikut : ➢ Buka direktori application/models/. Buka file dengan nama m_crud.php ➢ Tambahkan method update_data seperti berikut : ➢ Jalankan menu update data dari browser.