0% menganggap dokumen ini bermanfaat (0 suara)
5 tayangan14 halaman

Bab 3

Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
5 tayangan14 halaman

Bab 3

Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 14

BAB III

ROUTING DAN CONTROLLER CI 4

III.1 Tujuan
Adapun tujuan dari praktikum ini:
1. Untuk mengenal Routing dan Controller dalam codeigniter 4
2. Untuk memahami pembuatan Routing dalam meminta request
3. Untuk memahami pembuatan Controller dalam memberikan respons
4. Untuk memahami korelasi antara Routing dan Controller

III.2 Alat dan Bahan


1. Seperangkat komputer atau laptop
2. Code Editor
3. Framework CodeIgniter 4

III.3 Dasar Teori


III.3.1 Routes
a. Pengertian Routes
Pada codeigniter 4 ada dua buah jenis Routing untuk Routing yang
pertama Defined Routerouting yang kedua ada Auto Routing. Dengan
Defined Route Routing membantu pengembang website codeigniter 4
dalam mendifinisikan Routes secara manual, yang berarti URL fleksibel
mengikuti apa yang diinginkan oleh pengembang. Sedangakan untuk
Auto Routing akan otomatis membuat rute permintaan HTTP
berdasarkan konvensi dan menjalankan metode pengontrol yang sesuai.
Dengan Auto Routing pengembang tidak perlu menentukan rute secara
manual.
b. Aturan Konfigurasi Routes pada CI 4
Untuk mengatur route pada CI4 dapat dilakukan di app > Config >
Routes.php. Dalam file Routes.php akan dilihat bahwa Routes dibuat
dari turunan RoutesCollection Class ($Routes) yang memungkinkan
pengembang untuk bisa menentukan Routesnya sendiri. Route sendiri
dapat ditentukan menggunakan placeholders atau Regular Expression.
Ketika menentukan sebuah route yang lebih spesifik, pengembang
harus memilih method untuk merespon HTTP Verbs (request method).
HTTP Verbs yang sering digunakan oleh codeigniter 4 adalah GET dan
POST.
c. Penjelasan Routes Awal dari CI 4
Buka file Routes.php yang berada pada App > Config >
Routes.php.

Gambar 3. 1 Routes.php
Gambar 3.1 menampilkan kondisi ketika kita membuka Routes.php
yang mana akan muncul ketika kita klik “App”, kemudian klik
“Config”.
Untuk melakukan setting Routes di Routes.php, kita akan lebih
sering bermain pada bagian Route Definitions.

Gambar 3. 2 Route definitions


Gambar 3.2 adalah tampilan dari Route Definitions yang kita
gunakan untuk setting Routes.
Secara default awal pada Route Definitions hanya ada satu buah
Routes yang digunakan untuk merender resquest get, ketika URL
mengakses ‘/’ atau bisa diartikan mengakses localhost:8080 request
tersebut akan dikelola oleh class Controller Home dengan method
index.

Gambar 3. 3 Unser dalam route definitions


Gambar 3.3 adalah penjelasan dari tiap-tiap elemen yang ada pada
Route Definitions
Berikut ini adalah penjelasan yang dimaksud URL mengakses
dengan “/”.

Gambar 3. 4 localhost:8080/
Gambar 3.4 adalah contoh ketika kita mengakses menggunakan “/”.
Dengan begitu akan diberikan response oleh class Controller
Home method index maka akan tampil halaman seperti ini

Gambar 3. 5 Hasil penelusuran


Gambar 3.5 menampilkan hasil dari URL yang kita akses dengan
“localhost:8080”.
III.3.2 Controller
a. Pengertian Controller
Pada codeigniter 4 contoller merupakan sebuah simple class file
yang digunakan untuk mengatasi atau menjalankan HTTP request. Di
sini Routing saling berhubungan dengan Controller karena Routing
yang diinisiasi nantinya akan terhubung ke class dan method yang ada
pada Controller. Setiap Controller yang dibuat harus extend dengan
class BaseController. Class ini menyediakan fitur yang disediakan
untuk mengontrol sebuah Controller yang nantinya digunakan. Dalam
sebuah file Controller mengandung satu buah class parent yang
didalamnya class tersebut terdapat beberapa method dan method-
method inilah yang nanti akan dikonfigurasi dengan Routes dan yang
akan menjadi respons dari Routes yang dibuat.
b. Penjelasan Controller Awal dari CI 4
Buka folder Controller yang berada pada App > Controller

Gambar 3. 6 Controllers
Gambar 3.6 adalah kondisi ketika kita membuka folder
Controller, dimana terdapat file lagi di dalamnya.
Secara default CI4 akan memberikan 2 buah file pada folder
Controller untuk file pertama adalah BaseController.php yang menjadi
file parent bagi setiap file Controller yang akan dibuat, file-file
Controller yang akan dibuat nanti akan dilakukan extends kepada
BaseController.php. Untuk file yang kedua adalah Home.php yang
merupakan file Controller awal yang disediakan oleh CI4 file inilah
yang memberikan response dari request route di file Routes.php
sebelumnnya.
Secara default file Home.php terdapat satu class Controller yaitu
Home dan satu buah method yaitu index.

Gambar 3. 7 Unsur dalam Home.php


Gambar 3.7 adalah tampilan dari Home.php yang kita akses setelah
kita membuka folder Controller.
Class dan method harus diinisiasikan saat membuat sebuah Routes
agar dapat diterima response dari request yang diminta.

III.4 Latihan
III.4.1 Controller
1. Buka projek codeigniter yang sudah terinstall pada bab sebelumnya
pada code editor yang kita miliki.

Gambar 3. 8 Tampilan awal visual studio code


Gambar 3.8 adalah tampilan ketika kita membuka projek
codeigniter pada visual studio code.
2. Buka terminal atau klik ctrl+` lalu ketikan “php spark serve” untuk
membuat server projek codeigniter 4

Gambar 3. 9 Php spark serve


Gambar 3.9 menampilkan terminal yang kita akses setelah kita
tekan CTRL+`.
3. Buka folder Controller yang berada pada App > Controller, dan buatlah
Controller baru dengan nama HelloWorld.php

Gambar 3. 10 HelloWorld.php dalam Controllers


Gambar 3.10 menampilkan Controllers baru yang telah kita buat
dengan nama HelloWorld.php.
4. Saat membuat class pada sebuah Controller pastikan nama class sama
dengan nama file Controllernya

Gambar 3. 11 Coding pada HelloWorld.php


Gambar 3.11 menampilkan class yang ada pada Controller baru
yang kita buat, class harus sesuai dengan nama file.
5. Buat sebuah response sederhana dengan mengembalikan atau me-return
Hello World. Buat satu buat method dengan nama halodunia dan
mengembalikan Hello World.

Gambar 3. 12 Response pada HelloWorld.php


Gambar 3.12 merupakan tampilan Coding ketika kita membuat
response sederhana.
6. Selanjutnya akan dibuat Routes yang akan me-request GET yang nanti
akan diberikan response oleh class Controller HelloWorld method
halodunia.
III.4.2 Routes
1. Buka file Routes.php yang berada pada App > Config > Routes.php.

Gambar 3. 13 Membuka Routes.php


Gambar 3.13 menampilkan kondisi ketika kita membuka
Routes.php yang mana akan muncul ketika kita klik “App”, kemudian
klik “Config”.
2. Pada Route Definitions tambahkan Routes baru dimana dengan request
GET ketika URL memanggil ‘/HelloWorld’ nanti akan diresponse oleh
class Controller HelloWorld method halodunia.

Gambar 3. 14 Route baru pada Routes.php


Gambar 3.14 menampilkan Coding yang ada pada Route
Definitions.
3. Hasil dari Routes

Gambar 3. 15 Localhost:8080/halodunia
Gambar 3.15 menampilkan kondisi URL yang kita akses dengan
“localhost:8081/halodunia”, setelah kita melakukan response sederhana
dalam Route Definitions.

III.5 Tugas
1. Buatlah Routes dan Controller, dimana dalam Routes menggunakan
HTTP Verb POST yang dimana Controller akan me-return nama, nim,
kelas, mata kuliah, dosen pengampu, dan asisten praktikum. Buatlah
dengan konsep form!
Jawab :
1) Buat form.php pada folder App > Views

Gambar 3. 16 Membuat file form.php pada folder views


Gambar 3.16 adalah hasil dari file Form.php yang telah dibuat.
2) Tambahkan kode kedalam form.php untuk mengatur tampilan
pengisian data pada form.

Gambar 3. 17 Coding file form.php


Gambar 3.17 merupakan Coding yang dituliskan pada file
form.php.
3) Buat result.php pada folder App > Views

Gambar 3. 18 Membuat file result.php pada folder views


Gambar 3.18 membuat file lagi yang Bernama Result.php.
4) Tambahkan kode kedalam result.php untuk mengatur tampilan hasil
dari pengisian data pada form.

Gambar 3. 19 Coding file result.php


Gambar 3.19 Coding yang ditulis pada file result.php.
5) Buat Form.php pada folder App > Controllers

Gambar 3. 20 Membuat file form.php pada folder Controllers


Gambar 3.20 membuat file Bernama form.php yang diletakkan
pada folder App > Controllers.
6) Tambahkan kode kedalam Form.php, kode ini berisi class dan
function untuk menampilkan form.php dari folder App > Views.

Gambar 3. 21 Coding pada file form.php


Gambar 3.21 menunjukan isi Coding yang diisikan pada file
Form.php yang berada di Controllers.
7) Buat FormController.php pada folder App > Controllers

Gambar 3. 22 Membuat formController.php pada folder Controllers


Gambar 3.22 membuat file formController.php pada folder
Controllers.
8) Tambahkan kode kedalam FormController.php, kode ini berisi
class dan function untuk mengambil data dari form.php kedalam
variabel agar selanjutnya bisa menampilkan hasilnya pada
result.php di folder App > Views.

Gambar 3. 23 Coding pada formController.php


Gambar 3.22 file formController.php kemudian dituliskan
Coding seperti Gambar.
9) Buka file Routers.php yang berada pada App > Config >
Routers.php

Gambar 3. 24 Membuka Routes.php


Gambar 3.24 membuka file Routes.php untuk mengkonfigurasi
framework CI 4.
10) Pada Router Definitions tambahkan routers baru dimana dengan
request GET ketika URL memanggil ‘/form’ nanti akan diresponse
oleh class Controller Form method index dan request POST ketika
form menekan tombol submit akan memanggil URL ‘/submit-form’
nanti akan diresponse oleh class Controller FormController
method submitForm

Gambar 3. 25 Menambahkan Coding pada router definitions


Gambar 3.25 Menambahkan Coding pada Routes.php agar
dapat menampilkan web yang dibuat.
11) Sebelum melihat hasil dari Routers pastikan server hidup

Gambar 3. 26 Memastikan server hidup


Gambar 3.26 menjalankan perintah “php spark serve” pada
terminal untuk mengaktifkan server.
12) Hasil dari Routers ketika URL memanggil ‘/form’ dan mencoba
memasukan data pada form

Gambar 3. 27 Memasukkan data pada laman


Gambar 3.27 memasukkan data pada laman yang telah dibuat
pada visual studio di web.
13) Hasil dari Routers ketika menekan tombol pada form akan
memanggil URL ‘/submit-form’ dan akan menampilkan hasil dari
form

Gambar 3. 28 Hasil submit data yang diinputkan


Gambar 3.28 menampilakn hasil submit yang dimasukkan.
2. Jelaskan secara singkat mengenai Routes dan Controller yang sudah
dibuat pada soal nomor 1!
Jawab :
Penjelasan singkat mengenai routerr dan Controller dimulai pada
Controller bernama Form.php yang menampilkan form pengisian data
dan Controller yang bernama FormController.php yang mengirimkan
data dari pengisian kepada hasil. Routers dengan URL ‘/form’ akan
memanggil Controller Form.php dan method index, setelah pengisian
data selesai dan tombol submit ditekan maka akan mengarah pada URL
‘/submit-form’ sehingga memanggil Controller FormController.php dan
method submitForm kemudian hasil akan ditampilkan dari data
pengisian.

III.6 Kesimpulan
URL Routing (Route) adalah salah satu metode yang digunakan untuk
memetakan URL ke dalam sumber daya tertentu dengan memberikan nama
lain dari alamat sumber daya yang dimaksud. Route digunakan untuk
mempermudah pemahaman manusia ketika ada URL sulit, memperpendek
URL yang ada sebelumnya, serta memantau agar URL sesuai dengan format
yang diinginkan dengan memanfaatkan fungsi regular expression (regex).
Controller adalah merupakan sebuah simple class file yang digunakan
untuk mengatasi atau menjalankan HTTP request. Di sini Routing saling
berhubungan dengan Controller karena Routing yang diinisiasi nantinya
akan terhubung ke class dan method yang ada pada Controller.
Semua file yang menjadi tampilan yang ditampilkan pada web harus
berada pada folder Views, dan bisa juga ditambahkan desain UI dengan
menambahkan CSS.

Anda mungkin juga menyukai