Media Pengembangan Web & App | by APPKEY

Pembuatan WebsiteLaravelValidate Laravel untuk Validasi Data : Inilah Cara Membuatnya

Validate Laravel untuk Validasi Data : Inilah Cara Membuatnya

-

Last Updated on December 29, 2021 by

Setiap data yang masuk ke suatu sistem harus melalui proses validasi. Validasi atau validation dalam istilah pemrograman adalah proses pengecekan data yang masuk. Secara default, berbagai bahasa pemrograman maupun framework menyediakan validate, termasuk juga Laravel. Validate Laravel dilakuan dengan menggunakan kelas pengontrol dasar yang menggunakan sifat Validates Requests untuk memvalidasi semua permintaan Http yang masuk.

Pada artikel ini kita akan membahas lebih banyak tentang Laravel Validation dan bagaimana cara membuat validate laravel denga mudah. Jika Anda ingin tahu cara membuat laravel validation, simak penjelasan lengkap tentang validation di framework Laravel berikut ini.

Laravel Validation : Apa itu Validate Laravel?

validate-laravel

Validation adalah aspek yang paling penting ketika Anda membuat desain suatu aplikasi. Validation dalam framework manapun, termasuk juga Laravel, digunakan untuk memvalidasi data-data yang masuk. Biasanya, ia dipakai dengan menggunakan kelas controller dasar yang sudah tersedia di dalam suatu bahasa pemrograman yaitu ValidatesRequests.

Lumen memberikan Anda cara paling mudah untuk memvalidasi permintaan HTTP yang masuk dengan beberapa aturan validasi yang ketat.Laravel selalu memeriksa data sesi untuk kesalahan dan secara otomatis mengikat ke tampilan jika memungkinkan.

Jadi, penting untuk dicatat bahwa variabel $errors akan selalu tersedia di semua tampilan Anda pada setiap permintaan, memungkinkan Anda untuk dengan mudah mengasumsikan variabel $errors selalu didefinisikan dan dapat digunakan dengan aman. Tabel berikut menunjukkan semua aturan validasi yang tersedia di Laravel.

Laravel dikirimkan dengan fasilitas sederhana dan nyaman untuk memvalidasi data dan mengambil pesan kesalahan validasi melalui kelas Validator. Ini dia contoh Validate Laravel dengan kode:

$validator = Validator::make(
['name' => 'Dayle'],
['name' => 'required|min:5']
);

Data yang sedang divalidasi merupakan argumen pertama yang diteruskan dari metode make. Argumen kedua adalah aturan validasi yang harus diterapkan pada data. Anda juga bisa gunakan array untuk aturan yang spesifik. Beberapa aturan dapat dibatasi menggunakan karakter “pipe”, atau sebagai elemen array yang terpisah.

$validator = Validator::make(
['name' => 'Dayle'],
['name' => ['required', 'min:5']]
);

Anda juga bisa melakukan validasi pada banyak bidang.

$validator = Validator::make(
[
'name' => 'Dayle',
'password' => 'lamepassword',
'email' => 'email@example.com'
],
[
'name' => 'required',
'password' => 'required|min:8',
'email' => 'required|email|unique:users'
]
);

Setelah instance Laravel Validator dibuat, metode ‘fails’ atau ‘passes’ dapat digunakan untuk melakukan validasi.

if ($validator->fails())
{
// The given data did not pass validation
}

Jika Laravel Validation gagal, Anda dapat mengambil pesan kesalahan dari validator.
$messages = $validator->messages();
Anda juga dapat mengakses array yang berisi aturan validasi yang gagal (fail), tanpa pesan. Untuk melakukannya, gunakan metode ‘failed’:
$failed = $validator->failed();

Validate Laravel untuk Sebuah File

Kelas Validator menyediakan beberapa rules untuk melakukan validasi file seperti ‘size’ atau ukuran, ‘mimes’ atau peniruan, dan masih banyak lagi rules lainnya dalam Validate Laravel. Saat memvalidasi file, Anda cukup meneruskannya ke validator dengan data Anda yang lain.

After Laravel Validation Hook

Validator juga memungkinkan Anda untuk melampirkan panggilan balik untuk dijalankan setelah validasi selesai. Ini memungkinkan Anda untuk dengan mudah melakukan validasi lebih lanjut, dan bahkan menambahkan lebih banyak pesan kesalahan ke kumpulan pesan. Untuk memulai, gunakan metode ‘after’ pada instance validator :

$validator = Validator::make(...);

$validator->after(function($validator)
{
if ($this->somethingElseIsInvalid())
{
$validator->errors()->add('field', 'Something is wrong with this field!');
}
});

if ($validator->fails())
{
//
}

Anda mungkin ingin menambahkan callback ‘after’ untuk melakukan validator yang dibutuhkan.

Controller Laravel Validation

Tentu saja, membuat dan memeriksa instance Validator Laravel secara manual setiap kali Anda melakukan validasi adalah hal yang memusingkan. Namun, jangan khawatir! Anda masih punya pilihan lain.

Kelas App\Http\Controllers\Controller dasar yang disertakan dengan Laravel menggunakan sifat ValidatesRequests. Sifat ini menyediakan metode tunggal yang nyaman untuk memvalidasi permintaan HTTP yang masuk. Berikut tampilannya:

/**
* Store the incoming blog post.
*
* @param Request $request
* @return Response
*/
public function store(Request $request)
{
$this->validate($request, [
'title' => 'required|unique|max:255',
'body' => 'required',
]);

//
}

Jika validasi lolos, kode Anda akan tetap dieksekusi secara normal. Namun, jika validasi gagal, Illuminate\Contracts\Validation\ValidationException akan ditampilkan. Pengecualian ini secara otomatis ditangkap dan pengalihan dibuat ke lokasi pengguna sebelumnya. Kesalahan validasi bahkan secara otomatis di-flash ke sesi!

Jika permintaan yang masuk adalah permintaan AJAX, tidak ada pengalihan yang akan dibuat. Sebagai gantinya, respons HTTP dengan kode status 422 akan dikembalikan ke browser yang berisi representasi JSON dari kesalahan validasi.
Misalnya, berikut adalah kode yang setara yang ditulis secara manual:

Artikel Terkait  WHOIS Privacy Protection adalah : Yuk Ketahui lebih Jelas!
/**
* Store the incoming blog post.
*
* @param Request $request
* @return Response
*/
public function store(Request $request)
{
$v = Validator::make($request->all(), [
'title' => 'required|unique|max:255',
'body' => 'required',
]);

if ($v->fails())
{
return redirect()->back()->withErrors($v->errors());
}

//
}

Menyesuaikan Format Flashed Error

Jika Anda ingin menyesuaikan format kesalahan validasi yang di-flash ke sesi saat validasi gagal, ganti formatValidationErrors pada pengontrol dasar Anda. Jangan lupa untuk mengimpor kelas Illuminate\Validation\Validator di bagian atas file:

¬¬/**
* {@inheritdoc}
*/
protected function formatValidationErrors(Validator $validator)
{
return $validator->errors()->all();
}

Cara Membuat Validate Laravel Form

Untuk skenario validasi yang lebih kompleks, Anda mungkin ingin membuat “permintaan formulir”. Permintaan formulir adalah kelas permintaan khusus yang berisi logika validasi. Untuk membuat kelas permintaan formulir, gunakan perintah make:request Artisan CLI:
php artisan make:request StoreBlogPostRequest
Kelas yang dihasilkan akan ditempatkan di direktori app/Http/Requests. Mari tambahkan beberapa aturan validasi ke metode rules:

/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'title' => 'required|unique|max:255',
'body' => 'required',
];
}

Jadi, bagaimana aturan validasi dijalankan? Cukup masukkan petunjuk kueri dalam metode pengontrol seperti di bawah ini:

/**
* Store the incoming blog post.
*
* @param StoreBlogPostRequest $request
* @return Response
*/
public function store(StoreBlogPostRequest $request)
{
// The incoming request is valid...
}

Permintaan formulir yang masuk divalidasi sebelum metode pengontrol dipanggil, artinya Anda tidak perlu mengacaukan pengontrol Anda dengan logika validasi apa pun. Itu sudah divalidasi!
Jika validasi gagal, respons pengalihan dibuat dan pengguna dikembalikan ke lokasi sebelumnya. Kesalahan juga akan di-flash ke sesi sehingga tersedia untuk ditampilkan. Jika permintaan adalah permintaan AJAX, respons HTTP dengan kode status 422 akan dikembalikan ke pengguna termasuk representasi JSON dari kesalahan validasi.

Autorisasi Permintaan Form

Kelas permintaan formulir juga berisi metode Autorisasi. Dalam metode ini, Anda dapat memeriksa apakah pengguna yang diautentikasi benar-benar memiliki wewenang untuk memperbarui sumber daya yang diberikan. Misalnya, jika pengguna mencoba memperbarui komentar posting blog, apakah mereka benar-benar memiliki komentar itu? Sebagai contoh:

/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
$commentId = $this->route('comment');

return Comment::where('id', $commentId)
->where('user_id', Auth::id())->exists();
}

Perhatikan panggilan ke metode rute pada contoh di atas. Metode ini memberi Anda akses ke parameter URI yang ditentukan pada rute yang dipanggil, seperti parameter {comment} dalam contoh di bawah ini:
Route::post(‘comment/{comment}’);

Jika metode otorisasi mengembalikan false, respons HTTP dengan kode status 403 akan secara otomatis dikembalikan dan metode pengontrol Anda tidak akan dijalankan. Jika Anda berencana untuk memiliki logika otorisasi di bagian lain aplikasi Anda, cukup kembalikan true dari metode ‘authorize’ seperti di bawah ini:

/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}

Menyesuaikan Format Flashed Error

Jika Anda ingin menyesuaikan format kesalahan validasi yang di-flash ke sesi saat validasi gagal, ganti formatErrors pada permintaan dasar Anda (App\Http\Requests\Request). Jangan lupa untuk mengimpor kelas Illuminate\Validation\Validator di bagian atas file:

/**
* {@inheritdoc}
*/
protected function formatErrors(Validator $validator)
{
return $validator->errors()->all();
}

Itulah penjelasan tentang validate Laravel yang bisa Anda coba jika Anda bekerja dengan PHP dan ingin membuat form Laravel Validation untuk kebutuhan web Anda. Jangan lupa kunjungi Web App di https://appkey.id/ untuk dapatkan informasi terbaru seputar bahasa pemorgraman dan teknologi pengembangan web terkini.


Jasa Pembuatan Aplikasi, Website dan Internet Marketing | PT APPKEY
PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.

Jasa Pembuatan Aplikasi

Jasa Pembuatan Website

Jasa Pembuatan Paket Aplikasi

Jasa Pembuatan Internet Marketing

Mau posting artikel iklan?

Yuk klik dan ikuti ketentuan layanan dari kami, dapatkan penawaran paket dengan harga terbaik!

Subscribe Sekarang

Dapatkan beragam informasi menarik tentang Website, Aplikasi, Desain, Video dan API langsung melalui email Anda. Subscribe sekarang dan terus belajar bersama kami!

Kategori

Blog Post Ranking 10

Contoh PHP Curl : 10 Hal Luar Biasa yang dapat Anda Kembangkan dengan Curl

Meningkatnya jumlah aplikasi yang pindah ke web telah membuat "HTTP Scripting" lebih sering diminta dan diinginkan. Untuk dapat secara...

Encoding Adalah : Proses Komunikasi Encoding dan Decoding

Jika kita dapat melihat percakapan antar komputer, mungkin akan terlihat seperti ini: "010110111011101011010010110". Bahasa ini disebut dengan biner, encoding...

Looping Adalah Algoritma Perulangan: Berikut Contohnya

Jika anda sudah mendalami atau sedang mendalami dunia pemrograman terdapat sebuah konsep yang dapat memudahkan anda dalam menyusun struktur...

Rekomendasi 7 Aplikasi Pembuat Animasi 3D Terbaik. Ayo Cek!

Apakah Anda bercita-cita untuk menjadi seorang animator profesional? Belajar membuat animasi kini sudah menjadi hal mudah yang bisa dilakukan...

Metadata Adalah? Fungsi dan Jenis-Jenis Metadata

Pernah mendengar istilah metadata? Mungkin, kita sering mendengar istilah metadata. Tetapi, banyak dari kita yang belum tahu arti dari metadata...

Cara Membuat Aplikasi di Playstore dengan Mudah

Membuat aplikasi di Playstore bisa Anda lakukan dengan mudah. Terdapat beberapa situs yang bisa membantu Anda untuk membuat aplikasi...

4 Cara Mengatasi Autentikasi Google Play Store dengan Cepat dan Mudah

Apakah Anda sedang mengalami masalah autentikasi Google Play Store? Permasalahan autentikasi Google Play Store adalah permasalahan umum sering dialami...

Cara Mudah Menambahkan Lokasi Alamat Bisnis Anda di Google Maps

Saat ingin hunting tempat makan atau tempat nongkrong terbaru, tak jarang beberapa dari Anda biasanya mendapatkan informasi terkini melalui...

Ini Cara Mudah Membuat Redirect PHP | Seri Belajar PHP

Fungsi redirect PHP sangat banyak digunakan dalam kehidupan berwebsite alias mengelola website. Script redirect PHP banyak dipergunakan oleh user...

Rekomendasi 10 Aplikasi Coding Android Terbaik

Ketersediaan aplikasi coding Android memang banyak dicari oleh orang-orang yang sedang atau akan memulai untuk membuat aplikasi android. Jika...

Bisnis

Online Service

Peluang Bisnis

Model Bisnis

Entrepreneurship

Uang

Ketrampilan

Outsourcing

Monetize

Pemasaran

SEO

Internet Marketing

Dasar Pemasaran

Strategi Pemasaran

Situs Web Analitik

Iklan

Teknologi

Teknologi Terbaru

AI

Komputer

Jaringan

Paling Sering dibaca
Mungkin Anda Menyukainya