Anda di halaman 1dari 39

Pertemuan 4

Form Processing
Form digunakan untuk mengumpulkan data dari pengunjung web, mulai
dari login form, pendaftaran dan mengirimkan data antar halaman web.
Penggunaan form dengan html tidak akan terlalu berguna, form biasanya
hanya berupa interface yang disediakan untuk mengumpulkan data dari
user, dan akan diproses dengan bahasa pemograman web lainnya.

Didalam tag form tedapat atribut yaitu method, berfungsi untuk


menjelaskan bagaimana data isian form akan dikirim oleh web browser.
Nilai dari atribut method ini bisa berupa “get” atau “post”.
Perbedaan method get dan method post, jika kita mengisi atribut method
dengan get (default seandainya atribut method tidak ditulis) maka isian
form akan terlihat pada url browser –method get ini biasanya digunakan
untuk query pencarian.

Method post biasanya digunakan untuk data yang lebih sensitif seperti
yang berisi password, atau registrasi user –data hasil form tidak akan
terlihat pada browser.
Komponen Form

Dalam FORM HTML terdapat beberapa komponen yang bisa digunakan, antara lain :

a. Form
<FORM ACTION=action METHOD=method> </FORM>
Pengolahan Data Dari Form

Form di HTML dikenal dengan adanya tag <FORM> dan ditutup dengan
tag </FORM>. Di dalam tag pembuka <FORM> diikuti dengan atribut
action dan method. Action menjelaskan ke halaman yang digunakan
untuk memproses input, sementara method digunakan untuk mengatur
cara mem-parsing konten Web menerima input dari user atau pengunjung
menggunakan metode GET dan POST. GET akan mengirimkan data
bersama dengan URL, sedangkan POST akan mengirimkannya secara
terpisah. User mengirimkan data input dengan mengisi teks atau pilihan
pada atribut form html
Membuat form input di Laravel.

Buat file kode baru dengan nama forminput.blade.php dan simpan


pada folder resources/views, kemudian ketikkan kode berikut ini.
<!DOCTYPE html>
<html>
<head>
<title>Form Input Laravel</title>
</head>
<body>
<form action="/formulir/output" method="get">
{{ csrf_field() }}
Nim :
<input type="text" name="nim"> <br/>
Nama :
<input type="text" name="nama"> <br/>
Alamat :
<textarea name="alamat" cols="70" rows="5"></textarea><br/>
<input type="submit" value="Simpan">
</form>
</body>
</html>
Ubah file DasarController.php dengan menambahkan kode berikut
ini kemudian disimpan:

public function formulir()


{
return view('forminput');
}

Ubah Route pada file web.php dengan menambahkan kode berikut ini
kemudian disimpan:

Route::get('formulir', 'DasarController@formulir');
Untuk melihat hasil luarannya ketik pada web browser url
http://localhost:8000/formulir, seperti gambar dibawah ini.
Membuat tampilan output di Laravel.

Ubah file DasarController.php dengan menambahkan kode berikut


ini kemudian disimpan:
public function output(Request $request)
{
$nim = $request->input('nim');
$nama = $request->input('nama');
$alamat = $request->input('alamat');
return "Nim : ".$nim."<br>Nama : ".$nama."<br>Alamat : ".$alamat;
}

Ubah Route pada file web.php dengan menambahkan kode berikut ini
kemudian disimpan:

Route::get('formulir/output', 'DasarController@output');
Hasil luaran form input yang sudah diisi diatas akan mengarahkan ke
url http://localhost:8000/output seperti gambar dibawah ini.
CSRF_FIELD() Token

Pada kode untuk input formulir terdapat satu script yang bertuliskan {{
csfr_field() }}, fungsi dari perintah tersebut adalah untuk memproteksi
aplikasi Laravel dari serangan CSRF. CSRF merupakan kependenkan
dari Cross Site Request Forgery adalah sebuah serangan terhadap
aplikasi web yang memanfaatkan bug atau vulnerability pada aplikasi
web yang bekerja dengan cara mengeksploitasi suatu task dari sebuah
web dengan memanfaatkan Autentikasi yang dimiliki oleh korbannya.
CSFR_FIELD() sangatlah penting dan wajib diimplementasikan pada
setiap aksi post, put atau patch pada form input.
Latihan Pembuatan Form Biodata Mahasiswa

Input Biodata Mahasiswa


Output Biodata Mahasiswa
Kode Form Input:
Kode Form Input: (Lanjutan)
</tr>
<tr>
<td>Tanggal Lahir</td>
<td>:</td>
<td><input type="date" name="tgllhr"></td>
</tr>
<tr valign="top">
<td>Jenis Kelamin</td>
<td>:</td>
<td>
<input type="radio" name="jk" value="Laki-Laki">Laki - Laki<br>
<input type="radio" name="jk" value="Perempuan">Perempuan
</td>
</tr>
<tr valign="top">
<td>Pekerjaan</td>
<td>:</td>
<td>
<select name="kerja">
<option value="">--Pilih Pekerjaan--</option>
<option value="Karyawan">Karyawan</option>
<option value="Mahasiswa">Mahasiswa</option>
<option value="Wirausaha">Wirausaha</option>
<option value="Bekerja">Belum Bekerja</option>
</select>
</td>
</tr>
Kode Form Input: (Lanjutan)
<tr>
<td>Email</td>
<td>:</td>
<td><input type="email" name="email" placeholder="Email Anda"></td>
</tr>
<tr valign="top">
<td>Hobi</td>
<td>:</td>
<td>
<input type="checkbox" name="hobi1" value="Olah Raga">Olah Raga<
br>
<input type="checkbox" name="hobi2" value="Musik">Musik<br>
<input type="checkbox" name="hobi3" value="Pecinta Alam">Pecinta
Alam<br>
<input type="checkbox" name="hobi3" value="Lain">Lain-Lain
</td>
</tr>
<tr>
<td colspan="3">
<input type="submit" value="SIMPAN DATA">
<input type="reset" value="BATAL"><hr>
</td>
</tr>
</table>
</form>
</body>
</html>
Ubah Route pada file web.php dengan menambahkan kode berikut ini
kemudian disimpan:

Route::get('register', 'DasarController@register’);
Route::post('register/tampil', 'DasarController@tampil');
Kode Output Biodata Mahasiswa:
Ubah file DasarController.php dengan menambahkan kode berikut
ini kemudian disimpan:
public function tampil(Request $request)
{
$nim = $request->input('nim');
$nama = $request->input('nama');
$tmplahir = $request->input('tmplhr');
$tgllahir = $request->input('tgllhr');
$jk = $request->input('jk');
$kerja = $request->input('kerja');
$email = $request->input('email');
$hobi1 = $request->input('hobi1');
$hobi2 = $request->input('hobi2');
$hobi3 = $request->input('hobi3');
$hobi4 = $request->input('hobi4');

return "<h2>Biodata Mahasiswa</h2><hr>


Nim : ".$nim.
"<br>Nama : ".$nama.
"<br>Tempat Lahir : ".$tmplahir.
"<br>Tanggal Lahir : ".$tgllahir.
"<br>Jenis Kelamin : ".$jk.
"<br>Pekerjaan : ".$kerja.
"<br>Amail : ".$email.
"<br>Hobi : ".$hobi1.",". $hobi2."," .$hobi3.",". $hobi4.
"<hr><a href='/register'>Kembali";
}
Latihan Pembuatan dan Pemanggilan Form :
Buat script program untuk membuat form input dengan data sbb :
Buat script program untuk memanggil data dari form input
dengan bentuk sbb :
Percabangan
Pernyataan Seleksi

Sebagian besar bahasa pemrograman mengandung pernyataan seleksi.


Pada dasarnya pernyataan seleksi adalah suatu mekanisme yang
menjelaskan apakah pernyataan akan dikerjakan atau tidak, hal ini
tergantung kondisi yang dirumuskan. Dalam bahasa pemrograman java
pernyataan seleksi diterapkan dengan menggunakan statement IF dan
Switch Case.
Statement IF
If Tunggal
Statement IF merupakan statement yang penting dan pasti terdapat di semua bahasa
pemrograman. Statement ini berguna untuk membuat percabangan berdasarkan
kondisi tertentu yang harus dipenuhi.
Bentuk umun Statement IF adalah sebagai berikut :

If ( kondisi )

{
Statement;

}
Prinsip kerjanya adalah perintah di atas akan dikerjakan apabila kondisi bernilai
TRUE atau benar, sedangkan jika kondisi salah / FALSE maka statement di atas
tidak akan dikerjakan.
Pernyataan IF dan Else

Pernyataan ELSE merupakan bagian dari pernyataan if. Else digunakan untuk
memberikan alternative perintah apabila kondisi bernilai salah / FALSE.
Bentuk umum :
Contoh:
Buat file kode baru dengan nama ifthen.blade.php dan simpan pada folder
resources/views, kemudian ketikkan kode berikut ini.
<!DOCTYPE html>
<html>
<head>
<title>Percabangan</title>
</head>
<body>
<h1>Percabangan</h1><hr>
@if($nilai>=60)
<h3>
Nama : {{ $nama }}<br>
Nilai : {{ $nilai }}<br>
Keterangan : Selamat Anda Dinyatakan Lulus !
</h3>
@else
<h3>
Nama : {{ $nama }}<br>
Nilai : {{ $nilai }}<br>
Keterangan : Mohon Maaf Anda Dinyatakan Gagal !
</h3>
@endif
</body>
</html>
Ubah file DasarController.php dengan menambahkan kode berikut ini
kemudian disimpan:
public function ifthen()
{
$nama = "Arsakha";
$nilai = 100;
return view('ifthen', compact('nama','nilai'));
}

Ubah Route pada file web.php dengan menambahkan kode berikut ini kemudian
disimpan:

Route::get('ifthen', 'DasarController@ifthen’);

Untuk melihat hasil luarannya ketik pada web browser url


http://localhost:8000/ifthen, seperti gambar dibawah ini.
Untuk melihat hasil luarannya ketik pada web browser url
http://localhost:8000/ifthen, seperti gambar dibawah ini.
Pernyataan IF , ElseIf dan Else
Jika pernyataan else memberikan alternative pilihan kedua, maka untuk
pernyataan ElseIf dapat digunakan untuk meumuskan banyak alternative
pilihan (lebih dari dua pilihan).
Bentuk umum :
Contoh:
Buat file kode baru dengan nama nestedif.blade.php dan simpan pada
folder resources/views, kemudian ketikkan kode berikut ini.
<!DOCTYPE html>
<html>
@elseif($nilai>=70&&$nilai<=84)
<head> <h3>
<title>Percabangan</title>
</head>
Nama : {{ $nama }}<br>
<body> Nilai : {{ $nilai }}<br>
<h1>Percabangan</h1><hr>
@if($nilai<=35)
Grade : B <br>
<h3> Keterangan : Lulus!
Nama : {{ $nama }}<br>
Nilai : {{ $nilai }}<br> </h3>
Grade : E <br> @else
Keterangan : Gagal!
</h3> <h3>
@elseif($nilai>=36&&$nilai<=55) Nama : {{ $nama }}<br>
<h3>
Nama : {{ $nama }}<br> Nilai : {{ $nilai }}<br>
Nilai : {{ $nilai }}<br>
Grade : D <br>
Grade : A <br>
Keterangan : Gagal! Keterangan : Lulus!
</h3>
@elseif($nilai>=56&&$nilai<=69)
</h3>
<h3> @endif
Nama : {{ $nama }}<br>
Nilai : {{ $nilai }}<br>
</body>
Grade : C <br> </html>
Keterangan : Lulus!
</h3>
Ubah file DasarController.php dengan menambahkan kode berikut ini
kemudian disimpan:
public function nestedif()
{
$nama = "Razqa";
$nilai = 85;
return view('nestedif', compact('nama','nilai'));
}

Ubah Route pada file web.php dengan menambahkan kode berikut ini
kemudian disimpan:

Route::get('nested', 'DasarController@nestedif');
Untuk melihat hasil luarannya ketik pada web browser url
http://localhost:8000/nestedif, seperti gambar dibawah ini.
Statement Switch

Statement untuk pengatur alur program berikutnya adalah switch. Salah satu
keuntungan switch adalah ada bisa langsung mengevaluasi satu statement dan
memerintahkan aksi dalam jumlah yang lebih banyak.

Bentuk umum :

Switch ( nilai_ekspresi ){
Case nilai_1 : statement_1; break;
Case nilai_2 : statement_2; break;
Default: statement_n;}
Endswitch
Contoh:
Buat file kode baru dengan nama switchcase.blade.php dan simpan pada
folder resources/views, kemudian ketikkan kode berikut ini.
<!DOCTYPE html>
<html>
<head>
<title>Percabangan</title>
</head>
<body>
<h1>Percabangan Switch Case</h1><hr>
@switch($jurusan)
@case(11)
<h3>Program Studi Sistem Informasi Akuntansi</h3>
@break
@case(12)
<h3>Program Studi Sistem Informasi</h3>
@break
@case(13)
<h3>Program Studi Teknologi Komputer</h3>
@break
@default
<h3>Program Studi Teknologi Informasi</h3>
@endswitch
</body>
</html>
Ubah file DasarController.php dengan menambahkan kode berikut ini kemudian
disimpan:
public function switchcase()

{
$jurusan = "11";
return view('switchcase', compact('jurusan'));
}

Ubah Route pada file web.php dengan menambahkan kode berikut ini kemudian
disimpan:

Route::get('switchcase', 'DasarController@switchcase');
Untuk melihat hasil luarannya ketik pada web browser url
http://localhost:8000/switchcase, seperti gambar dibawah ini.
Latihan Form Percabangan 1

Latihan bisa dikerjakan dengan melihat di


modul halaman 61
Latihan Form Percabangan 2
Tampilan Input
Tampilan Output :

Ketentuan Soal :
1. Ketentuan untuk kota tujuan dan harganya :
a. Jika Solo, maka harga 450000
b. Jika Semarang, maka harga 350000,
c. Jika Yogyakarta, maka harga 400000
d. Jika Surabaya, maka harga 550000
2. Ketentuan untuk jumlah beli dan diskon :
a. Jika jumlah beli lebih dari sama dengan 3, maka diskon 10% dari
harga tiket.
b. Jika kurang dari 3, maka tidak dapat diskon.
3. Total Harga : (harga x jumble) – diskon
4. Jika klik Kembali, maka akan kembali ke halaman input

Anda mungkin juga menyukai