Laravel - Permintaan
Di chapter ini, Anda akan mempelajari lebih detail tentang Requests di Laravel.
Mengambil URI Permintaan
Itu “path”metode digunakan untuk mengambil URI yang diminta. Ituismetode digunakan untuk mengambil URI yang diminta yang cocok dengan pola tertentu yang ditentukan dalam argumen metode. Untuk mendapatkan URL lengkapnya, kita bisa menggunakanurl metode.
Contoh
Step 1 - Jalankan perintah di bawah ini untuk membuat pengontrol baru bernama UriController.
php artisan make:controller UriController –plain
Step 2 - Setelah eksekusi URL berhasil, Anda akan menerima output berikut -
Step 3 - Setelah membuat pengontrol, tambahkan kode berikut di file itu.
app/Http/Controllers/UriController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class UriController extends Controller {
public function index(Request $request) {
// Usage of path method
$path = $request->path();
echo 'Path Method: '.$path;
echo '<br>';
// Usage of is method
$pattern = $request->is('foo/*');
echo 'is Method: '.$pattern;
echo '<br>';
// Usage of url method
$url = $request->url();
echo 'URL method: '.$url;
}
}
Step 4 - Tambahkan baris berikut di app/Http/route.php mengajukan.
app/Http/route.php
Route::get('/foo/bar','UriController@index');
Step 5 - Kunjungi URL berikut.
http://localhost:8000/foo/bar
Step 6 - Outputnya akan muncul seperti yang ditunjukkan pada gambar berikut.
Mengambil Input
Nilai input dapat dengan mudah diambil di Laravel. Tidak peduli metode apa yang digunakan“get” atau “post”, metode Laravel akan mengambil nilai input untuk kedua metode dengan cara yang sama. Ada dua cara untuk mendapatkan kembali nilai masukan.
- Menggunakan metode input ()
- Menggunakan properti dari instance Request
Menggunakan metode input ()
Itu input()Metode mengambil satu argumen, nama bidang dalam formulir. Misal form berisi field username maka kita bisa mengaksesnya dengan cara berikut.
$name = $request->input('username');
Menggunakan properti dari instance Request
Seperti input() metode, kita bisa mendapatkan properti nama pengguna langsung dari contoh permintaan.
$request->username
Contoh
Perhatikan contoh berikut untuk memahami lebih lanjut tentang Permintaan -
Step 1 - Buat formulir Pendaftaran, di mana pengguna dapat mendaftarkan dirinya dan menyimpan formulir di resources/views/register.php
<html>
<head>
<title>Form Example</title>
</head>
<body>
<form action = "/user/register" method = "post">
<input type = "hidden" name = "_token" value = "<?php echo csrf_token() ?>">
<table>
<tr>
<td>Name</td>
<td><input type = "text" name = "name" /></td>
</tr>
<tr>
<td>Username</td>
<td><input type = "text" name = "username" /></td>
</tr>
<tr>
<td>Password</td>
<td><input type = "text" name = "password" /></td>
</tr>
<tr>
<td colspan = "2" align = "center">
<input type = "submit" value = "Register" />
</td>
</tr>
</table>
</form>
</body>
</html>
Step 2 - Jalankan perintah di bawah ini untuk membuat file UserRegistration pengontrol.
php artisan make:controller UserRegistration --plain
Step 3 - Setelah berhasil menjalankan langkah di atas, Anda akan menerima output berikut -
Step 4 - Salin kode berikut ini
app/Http/Controllers/UserRegistration.php pengontrol.
app/Http/Controllers/UserRegistration.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class UserRegistration extends Controller {
public function postRegister(Request $request) {
//Retrieve the name input field
$name = $request->input('name');
echo 'Name: '.$name;
echo '<br>';
//Retrieve the username input field
$username = $request->username;
echo 'Username: '.$username;
echo '<br>';
//Retrieve the password input field
$password = $request->password;
echo 'Password: '.$password;
}
}
Step 5 - Tambahkan baris berikut app/Http/routes.php mengajukan.
app/Http/routes.php
Route::get('/register',function() {
return view('register');
});
Route::post('/user/register',array('uses'=>'UserRegistration@postRegister'));
Step 6- Kunjungi URL berikut dan Anda akan melihat formulir pendaftaran seperti yang ditunjukkan pada gambar di bawah ini. Ketik detail pendaftaran dan klik Daftar dan Anda akan melihat di halaman kedua bahwa kami telah mengambil dan menampilkan detail pendaftaran pengguna.
http://localhost:8000/register
Step 7 - Outputnya akan terlihat seperti gambar di bawah ini.