laravel forms validation rules with example
Ce didacticiel explique les formulaires Laravel et les règles de validation de formulaire. Découvrez différents éléments de formulaire avec des exemples:
Dans le Base de données Laravel tutoriel de Série de didacticiels Laravel , nous avons découvert la gestion des bases de données, les migrations, l'amorçage, les requêtes SQL brutes, les modèles éloquents, les relations éloquentes, Artisan et Tinker.
Les formulaires sont une fonctionnalité essentielle lors du développement d'une application Web. Il est même difficile de penser à une application Web sans avoir de formulaire. La validation est un facteur critique lors de la création d'un formulaire, et sans validation appropriée, ils sont inutiles.
Il existe plusieurs méthodes pour créer un formulaire. Dans ce didacticiel, nous avons discuté d'une de ces méthodes. Ce didacticiel actualise également vos connaissances HTML liées aux formulaires.
Dans ce tutoriel, nous avons couvert Formes de Laravel et Règles de validation Laravel . Pour tous les exemples, nous avons utilisé Laravel version 7 .
Ce que vous apprendrez:
Formulaires Laravel
Conditions préalables
Pour continuer, vous devez vous familiariser avec les concepts suivants:
# 1) Bootstrap
Nous avons utilisé Bootstrap comme framework CSS dans ce tutoriel, en supposant que vous soyez familier avec le framework Bootstrap. Visitez ce lien pour en savoir plus sur Bootstrap.
# 2) Installation de Laravel et création d'un nouveau projet
Veuillez vous référer au Tutoriel d'introduction Laravel pour comprendre comment installer Laravel et créer un nouveau projet.
# 3) Configuration de la base de données Laravel
Veuillez vous référer au Tutoriel de base de données Laravel d'avoir l'idée de base du concept de base de données Laravel.
Jeton CSRF
CSRF signifie Falsification de requêtes intersites . Le jeton CSRF est utilisé pour protéger l'application Web contre les attaques CSRF. Ces jetons contiennent une valeur unique générée par le côté serveur de l'application, qui est envoyée au côté client de l'application. En outre, cela permet de vérifier si un utilisateur authentifié envoie la demande à l'application.
Nous utilisons ce jeton lorsque le développeur crée un formulaire comme indiqué ci-dessous:
@csrf ... Éléments de formulaire
La liste suivante montre certains des éléments de formulaire que nous pouvons utiliser lors de la création d'un formulaire.
- Étiqueter
- Saisie de texte
- Entrée par défaut
- Entrée numérique
- Entrée de la date
- Entrée de fichier
- Entrée masquée
- Textarea
- Entrée e-mail
- Saisie du mot de passe
- Liste déroulante ou boîte de sélection
- Entrée de bouton radio
- Entrée de bouton radio
- Entrée de bouton radio cochée
- Case à cocher
- Entrée de case à cocher
- Entrée de case à cocher cochée
- Bouton
- Bouton normal
- Bouton de soumission
- Bouton de repos
Nous pouvons utiliser les extraits de code suivants comme référence lors de la création d'un formulaire.
# 1) Étiquette
Description: Une étiquette représente la légende de l'élément de formulaire.
Exemple: Générer une étiquette pour le Prénom .
First Name
# 2) Saisie de texte
Description: Un champ de saisie de texte est un champ de saisie sur une seule ligne qui permet à l'utilisateur de saisir du texte.
Exemple: Génération d'un champ de saisie de texte pour Prénom .
# 3) Entrée par défaut
Description: Un champ de saisie par défaut permet au développeur d'insérer un champ de saisie avec une valeur par défaut. L'utilisateur peut soumettre le formulaire avec la valeur par défaut ou modifier la valeur.
Exemple: Générer un champ de saisie pour le Prénom avec valeur par défaut John Doe .
# 4) Entrée numérique
Description: Le nombre de champ de saisie permet à l'utilisateur de saisir une valeur numérique.
Exemple: Génération d'un champ de saisie numérique pour âge .
# 5) Entrée de la date
Description: Un champ de saisie de date permet à l'utilisateur de sélectionner une date.
Exemple: Génération d'un champ de saisie de date pour le date de naissance .
# 6) Entrée de fichier
Description: Un champ de saisie de fichier permet à l'utilisateur de télécharger un fichier.
Exemple: Génération d'un champ de sélection de fichier pour copie du certificat télécharger.
# 7) Entrée cachée
Description: Un champ de saisie masqué permet au développeur d'ajouter des données lorsque l'utilisateur soumet le formulaire, et l'utilisateur ne peut pas voir ou modifier ces données.
Exemple: Générer un champ de saisie masqué pour Carte d'étudiant qui a la valeur 220 .
# 8) Textarea
Description: Une zone de texte permet à l'utilisateur de saisir un long texte. Il peut contenir plusieurs lignes de texte.
Exemple: Générer une zone de texte pour adresse .
# 9) Entrée d'e-mail
Description: Un champ de saisie d'e-mail permet à l'utilisateur de saisir une adresse e-mail. Il valide automatiquement le format de l'e-mail.
Exemple: Génération d'un champ de saisie d'e-mail.
# 10) Saisie du mot de passe
Description: Un champ de saisie de mot de passe permet à l'utilisateur de saisir un mot de passe. Les caractères saisis sont masqués.
Exemple: Génération d'un champ de saisie de mot de passe.
# 11) Liste déroulante ou boîte de sélection
Description: Une liste déroulante ou une zone de sélection permet à l'utilisateur de sélectionner une option dans une liste d'options.
Exemple: Générer une liste déroulante pour le Titre .
Title -- Mr. Ms. Dr.
# 12) Entrée de bouton radio
a) Entrée bouton radio
Description: Un bouton radio permet à l'utilisateur de sélectionner une seule option dans une liste de deux ou plusieurs options mutuellement exclusives.
Exemple: Génération d'un champ de saisie de bouton radio pour le genre .
Gender Male Female
b) Entrée de bouton radio qui est vérifiée
Description: Cela permet au développeur d'insérer un champ de saisie de bouton radio coché.
Exemple: Génération d'un champ de saisie de bouton radio pour le genre - Masculin l'option est vérifié .
Gender Male Female
# 13) Entrée de case à cocher
a) Entrée de case à cocher
Description: Une case à cocher permet à l'utilisateur de sélectionner une ou plusieurs options à partir d'un ensemble d'options donné.
Exemple: Générer un champ de saisie de case à cocher pour couleurs .
Colours Red Yellow Green
b) Entrée de case à cocher cochée
Description: Cela permet au développeur d'insérer un champ de saisie de case à cocher qui est coché.
Exemple: Générer un champ de saisie de case à cocher pour couleurs - rapporter est vérifié .
Colours Red Yellow Green
# 14) Boutons
Trois types de boutons peuvent être utilisés lors de la création de formulaires Laravel.
- Bouton normal
- Bouton de soumission
- Bouton de réinitialisation
a) Bouton normal
Description: Un bouton normal est un bouton cliquable.
Exemple: Générer un bouton normal.
b) Bouton Soumettre
Description: Un bouton d'envoi permet à l'utilisateur de soumettre les données du formulaire au côté serveur de l'application.
Exemple: Génération d'un bouton d'envoi.
c) Bouton de réinitialisation
Description: Un bouton de réinitialisation permet à l'utilisateur de définir les champs de formulaire sur leurs valeurs d'origine.
Exemple: Génération d'un bouton de réinitialisation.
Règles de validation Laravel
La liste suivante montre quelques règles de validation Laravel:
Noter : Se référer au documentation officielle de la validation Laravel pour voir la liste complète des validations. Certaines des règles importantes sont énumérées ci-dessous.
#1) Avant ou égal (date) - before_or_equal: date
Cette règle de validation permet uniquement d'utiliser une valeur antérieure ou égale à la date donnée.
#deux) Compris entre - entre: min, max
Cette règle de validation permet uniquement d'utiliser une taille comprise entre le minimum et le maximum donnés.
# 3) Date - Date
Cette règle de validation permet uniquement d'utiliser une date valide et non relative selon la strtotime Fonction PHP.
# 4) Format de date - date_format: format
Sous cette règle de validation, le champ doit correspondre au format donné.
# 5) Différent - différent: champ
questions d'entretien de sélénium pour 3 ans d'expérience
Sous cette règle de validation, le champ doit avoir une valeur différente de celle du champ.
# 6) Distinct - distinct
Lorsque vous travaillez avec des tableaux, selon cette règle de validation, le champ ne doit pas avoir de valeurs en double.
# 7) E-mail - e-mail
Dans le cadre de cette règle de validation, le champ doit être formaté comme une adresse e-mail.
# 8) Fichier d'image) - image
Sous cette règle de validation, le champ doit être une image (jpeg, png, bmp, gif, svg ou webp).
# 9) Nullable - nullable
Sous cette règle de validation, le champ doit être nul.
# dix) Numérique - numérique
Sous cette règle de validation, le champ doit être numérique.
#Onze) Expression régulière - regex: motif
Sous cette règle de validation, le champ doit correspondre à l'expression régulière donnée.
N ° 12) Obligatoire - obligatoire
Selon cette règle de validation, le champ doit être présent dans les données d'entrée et non vide.
N ° 13) Taille - taille: valeur
Sous cette règle de validation, le champ doit avoir une taille correspondant à la valeur donnée.
N ° 14) quelquefois - quelquefois
Cette règle de validation exécute des contrôles de validation sur un champ uniquement si ce champ est présent dans le tableau d'entrée.
#quinze) URL - URL
Sous cette règle de validation, le champ doit être une URL valide.
Exemple de formulaires Laravel avec validation Laravel
Dans cet exemple, nous allons créer un formulaire d'inscription étudiant avec validation de base Laravel.
Étape 1: Installez un nouveau projet Laravel.
Étape 2: Connectez votre projet à la base de données.
Étape 3: Créer xxxx_xx_xx_xxxxxx_create_students_table migration et la Étudiant maquette.
Ouvrez le xxxx_xx_xx_xxxxxx_create_students_table.php et modifiez le code existant comme indiqué ci-dessous:
increments('id'); $table->string('title',10); $table->string('name'); $table->date('bday'); $table->integer('age'); $table->string('gender',10); $table->string('phone'); $table->string('address'); $table->string('email'); $table->string('password'); $table->boolean('t&c'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('students'); } }
Ouvrez le fichier Student.php et modifiez le code existant comme indiqué ci-dessous:
Étape 4: Exécutez la commande suivante dans l'invite de commande pour exécuter les migrations.
php artisan migrate
Étape 5: Ajoutez les deux itinéraires suivants au routes / web.php déposer.
Route::get('student/create','StudentController@create')->name('student.create'); Route::post('student/create','StudentController@store')->name('student.store');
Étape 6: Créer StudentController et modifiez le code existant comme indiqué ci-dessous:
all(); $request->validate(( 'title' => 'required', 'name' => 'required|max:255', 'bday' => 'required|date', 'age' => 'required|numeric', 'gender' => 'required', 'phone' => 'required|min:10', 'address' => 'required|max:255', 'email' => 'required|email|max:255', 'password' => 'required|min:6|max:255', 't&c' => 'required', )); $input('password') = bcrypt($input('password')); Student::create($input); return back()->with('success','Successfully registered a new student!'); } }
Étape 7: Créez le fichier de vue approprié (create.blade.php) et ajoutez le code suivant.
Laravel 7 Forms Tutorial @if (count($errors) > 0) @foreach ($errors->all() as $error) - {{ $error }}
@endforeach
@endif @if ($message = Session::get('success')) × {{ $message }} @endif Student Registration Form
@csrf Title -- Mr. Ms. Name Birth Date Age Gender Male Female Phone Address Email Password I agree to the terms and conditions.
Étape 8: Exécutez le projet sur le navigateur. Il produira une sortie similaire à la capture d'écran ci-dessous.

Il est temps de jouer avec cette forme. Si vous remplissez le formulaire avec des valeurs non valides, vous obtiendrez des erreurs de validation. Si vous remplissez correctement le formulaire et que vous le soumettez, vous recevrez un message de réussite et les valeurs seront enregistrées dans la base de données.
Conclusion
Les formulaires Laravel aident les développeurs à collecter des données auprès des clients ou des visiteurs du site. Le développeur doit créer des formulaires avec une validation appropriée. Sinon, les formulaires peuvent ne pas être utiles tels quels. Nous avons discuté des règles importantes de validation de formulaire Laravel dans ce didacticiel.
Nous espérons que vous avez trouvé ce tutoriel utile! J'espère vous revoir dans le prochain tutoriel où nous discuterons du téléchargement de fichiers, de l'envoi d'e-mails, des sessions, de l'authentification et de l'autorisation.
Bon apprentissage!
<< PREV Tutorial | Tutoriel SUIVANT >>
lecture recommandée
- Tutoriel PHP Laravel pour les débutants: Qu'est-ce que le framework Laravel
- Base de données Laravel, Migrations, ORM éloquent et Tinker
- Session Laravel, téléchargement / téléchargement de fichiers et autorisations
- Tutoriel Laravel Collection et Laravel Forge
- Automatisation de la validation des réponses avec des assertions dans Postman
- Guide ultime des tests de validation
- Différence exacte entre la vérification et la validation avec des exemples