La Validation des inputs
Laravel offre une variété de validateurs intégrés qui peuvent être utilisés pour valider les données entrantes dans une application. Voici une liste de certains des validateurs les plus couramment utilisés, avec des explications et des exemples pour chacun :
required
Le champ doit être présent dans la requête.
string
Le champ doit être une chaîne de caractères.
numeric
Le champ doit être un nombre (peut être entier ou décimal).
integer
Le champ doit être un nombre entier.
boolean
Le champ doit être soit true, false, 1 ou 0.
email
Le champ doit être une adresse e-mail valide.
unique:table,column,except,idColumn
Le champ doit être unique dans une table spécifiée (sauf pour une certaine ligne si except et idColumn sont fournis).
max:value
La valeur du champ ne doit pas dépasser une certaine taille ou longueur.
min:value
La valeur du champ doit être au moins d'une certaine taille ou longueur.
confirmed
Le champ doit être confirmé par un champ de même nom avec un suffixe _confirmation.
in:foo,bar,...
La valeur du champ doit être dans la liste spécifiée.
date
Le champ doit être une date valide.
regex:pattern
La valeur du champ doit correspondre à l'expression régulière spécifiée.
Validation des inputs :Date
Date obligatoire :
Date avec un format spécifique (par exemple, 'Y-m-d') :
Date après une autre date :
Date avant une autre date :
Date entre deux valeurs spécifiques :
Date après une certaine période :
Date avant une certaine période :
Date de naissance (pour s'assurer que la personne a un âge minimum) :
Date de début et de fin pour un intervalle spécifié :
Exemples
Créer la Migration:Founrnisseur
Créer le Model:Founrnisseur
Créer le controlleur:FournisseurController
Ajouter les routes:web.php
Ajouter la vue :fournisseurs.ajouter
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Ajouter un Fournisseur</title>
</head>
<body>
<style>
.errorvalidation{color:red;}
</style>
<h1>Ajouter un Fournisseur</h1>
{{-- Formulaire d'ajout de Fournisseur --}}
<form method="POST" action="{{ route('fournisseurs.sauvegarder') }}">
@csrf
<label for="nom">Nom :</label>
<input type="text" name="nom" value="{{ old('nom') }}">
<!-- afficher le message d'erreur de la validation du chams nom-->
@error('nom')
<span class="errorvalidation">{{$message}}</span>
@enderror
<br>
<label for="prenom">Prénom :</label>
<input type="text" name="prenom" value="{{ old('prenom') }}">
@error('prenom')
<span class="errorvalidation">{{$message}}</span>
@enderror
<br>
<label for="email">Email :</label>
<input type="text" name="email" value="{{ old('email') }}">
@error('email')
<span class="errorvalidation">{{$message}}</span>
@enderror
<br>
<label for="age">Âge :</label>
<input type="text" name="age" value="{{ old('age') }}">
@error('age')
<span class="errorvalidation">{{$message}}</span>
@enderror
<br>
<label for="dateNaissance">Date de Naissance :</label>
<input type="text" name="dateNaissance" value="{{ old('dateNaissance') }}">
@error('dateNaissance')
<span class="errorvalidation">{{$message}}</span>
@enderror
<br>
<label for="tel">Téléphone :</label>
<input type="text" name="tel" value="{{ old('tel') }}">
@error('tel')
<span class="errorvalidation">{{$message}}</span>
@enderror
<br>
<button type="submit">Ajouter</button>
</form>
<h1>On peut afficher pour chaque champs sont error de validation </h1>
OU
<h1>Afficher tous les messages d'erreurs de la validation de tous les champs</h1>
<!--
$errors:un objet contient les erreurs envoyer par $request->validate()
any():vérifier si on a ou moins une erreur
foreach:boucler sur les erreurs en les affichant one by one
-->
@if($errors->any())
<div style="color: red;">
<ul>
@foreach($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
</body>
</html>
Ajouter la vue :fournisseurs.index