5 - Request Data Pada Laravel
5 - Request Data Pada Laravel
Laravel
Request Data Pada Laravel – Selamat datang kembali di tutorial lengkap laravel bahasa
indonesia. pada tutorial laravel part 5 ini kita akan belajar tentang request data pada laravel.
Ada istilah yang di sebut dengan request pada laravel. maksud nya juga sama, ada proses
menerima atau menangkap data dari inputan POST, dan ada juga jenis proses penengkapan
dari URL.
Caranya tidak sulit, teman-teman tinggal memahami penjelasan pada tutorial ini, dan
alangkah lebih bagus lagi juga teman-teman langsung mengikuti dengan cara langsung
mempraktekkan contoh kasus yang ada pada tutorial ini.
1|Page
Penerimaan Data Melalui URI
Penerimaan Data Dari Input
Kita akan banyak menggunakan metode proses penerimaan data ini nantinya pada saat
mengembangkan aplikasi menggunakan laravel, baik itu menerima atau menangkap data dari
url, atau menangkap data dari form input pada saat membuat proses login, CRUD pada
laravel dan proses yang memerlukan pengolahan data lainnya.
Akan kita bahas satu per satu. Kita mulai dengan cara menangkap data dari URI atau url.
Sebenarnya ada banyak cara juga untuk menangkap data yang dikirimkan melalui url, tapi di
sini kita akan menggunakan teknik penengakapan data dari url yang sederhana. dan yang
menurut saya paling mudah.
Kita bisa menangkap data dari url dengan men-setting terlebih dulu pada bagian route laravel.
Sebelumnya kita telah belajar tentang route pada laravel. silahkan teman-teman baca lagi
tutorial laravel #2 Route dan View Pada Laravel di www.malasngoding.com jika teman-
teman belum membacanya.
Baik sekarang silahkan buka route pada file web.php dalam project “belajar_laravel” yang
sudah kita buat sebelumnya dari tutorial laravel part 1.
belajar_laravel/routes/web.php
1 Route::get('/pegawai/{nama}', 'PegawaiController@index');
Jadi di sini kita membuat route baru, yaitu pada parameter pertama kita buat dengan
“pegawai”. dan parameter kedua kita menangkap datanya dengan menuliskan syntax
“{nama}“. untuk penamaan nya bebas teman-teman bisa menyesuaikan sendiri.
dan di route ini kita juga memerintahkan untuk menjalankan controller PegawaiController,
dan method index.
2|Page
Cara membuat controller pada laravel sudah dijelaskan pada tutorial laravel part sebelumnya
di malasngoding.com.
belajar_laravel/app/Http/Controllers/PegawaiController.php
<?php
1 <?php
2
3 namespace App\Http\Controllers;
4
5 use Illuminate\Http\Request;
6
7 class PegawaiController extends Controller
8 {
9 public function index($nama){
10
11 return $nama;
12
13 }
14
15 }
Perhatikan pada syntax di atas, di atas kita membuat method index dengan menangkap data
yang dikirim dari route tadi.
jadi untuk menangkap data dari route tadi ( {nama} ), tinggal kita tangkap di method dengan
menuliskan variabel nama dalam parameter method nya (index).
Kemudian kita bisa langsung mengolah data yang di tangkap tadi, di sini kita langsung me
return data variabel nama.
localhost:8000/pegawai/malasngoding
3|Page
Request Data Pada Laravel
nah seperti yg teman-teman lihat pada contoh di atas, data yg kita kirimkan adalah
“malasngoding”. maka pada controller kita mereturn datanya langsung. jadi data langsung
tampil seperti pada gambar di atas.
Intinya adalah apapun data yang dikirimkan melalui URL tadi adalah data yang ditangkap
pada controller. jadi apa yg diketikkan pada “malasngoding”, maka data itulah yang
ditampilkan.
Setelah kita belajar cara menangkap data dari url di sub judul sebelumnya, sekarang kita akan
belajar menangkap data yang dikirimkan dari form input menggunakan form method post.
belajar_laravel/routes/web.php
1 Route::get('/formulir', 'PegawaiController@formulir');
2 Route::post('/formulir/proses', 'PegawaiController@proses');
pada route “/formulir” kita memerintahkan untuk menjalankan method “formulir” dalam
controller PegawaiController. dan route yang satunya lagi yaitu route “/formulir/proses” kita
perintahkan untuk menjalankan method proses dalam controller PegawaiController dengan
menggunakan fungsi post().
4|Page
Menangkap data dari form input laravel
Karena pada route “formulir/proses” ini kita akan menangkap data post dari form.
belajar_laravel/app/Http/Controllers/PegawaiController.php
return view('formulir');
pada method formulir ini kita memanggil view formulir. jadi sekarang kita buat sebuah view
baru. buat view baru dengan nama formulir.blade.php
belajar_laravel/resources/views/formulir.blade.php
<!DOCTYPE html>
<html>
<head>
<title>Tutorial Laravel
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <title>Tutorial Laravel - www.malasngoding.com</title>
5 </head>
6 <body>
7
8 <form action="/formulir/proses" method="post">
9 <input type = "hidden" name = "_token" value = "<?php echo csrf_token() ?>">
10
11 Nama :
12 <input type="text" name="nama"> <br/>
5|Page
13 Alamat :
14 <input type="text" name="alamat"> <br/>
15 <input type="submit" value="Simpan">
16 </form>
17
18 </body>
19 </html>
1 <input type = "hidden" name = "_token" value = "<?php echo csrf_token() ?>">
Untuk csrf pada laravel akan kita bahas pada tutorial selanjutnya agar teman-teman bisa lebih
mudah memahami materi laravel kita.
Pada form di atas kita membuat form inputan sederhana, yaitu form inputan nama dan alamat.
yang actionnya kita arahkan ke route “formulir/proses”.
karena pada route “formulir/proses” sudah kita set ke method “proses” pada controller
PegawaiController, maka sekarang kita buat lagi sebuah method dalam controller
PegawaiController, yaitu method proses() sebagai pemroses data yang dikirim dari form.
belajar_laravel/app/Http/Controllers/PegawaiController.php
<?php
1 <?php
2
3 namespace App\Http\Controllers;
6|Page
4
5 use Illuminate\Http\Request;
6
7 class PegawaiController extends Controller
8 {
9 public function index($nama){
10
11 return $nama;
12
13 }
14
15 public function formulir(){
16
17 return view('formulir');
18
19 }
20
21 public function proses(Request $request){
22 $nama = $request->input('nama');
23 $alamat = $request->input('alamat');
24 return "Nama : ".$nama.", Alamat : ".$alamat;
25 }
26 }
Untuk menangkap data yang dikirim dari form, kita bisa menangkap datanya dengan
mendeklarasikan “Request” pada parameter method proses. dan di lanjutkan dengan
menuliskan nama variabel tempat kita menyimpan data-data yang dikirim dari form ke dalam
1 buah variabel. pada contoh di atas semua data inputannya kita simpan dalam variabel
$request.
Baru kemudian kita pecah data-data yang kita tangkap dengan menuliskan fungsi input().
Dalam fungsi input() nya kita tulis data apa yang ingin kita ambil (sesuai dengan nama form
masing-masing).
7|Page
Input post pada laravel
request laravel
Oke teman-teman sekarang kita telah berhasil menangkap data dari form (route formulir) dan
memproses nya dalam route formulir/proses.
Selesai sudah pembahasan kita tentang Request Data Pada Laravel. sampai jumpa pada
tutorial laravel part selanjutnya.
8|Page