Maison cadre php Laravel Création et validation de formulaires dans Laravel : simplification de la saisie utilisateur et de la gestion des données

Création et validation de formulaires dans Laravel : simplification de la saisie utilisateur et de la gestion des données

Aug 12, 2023 pm 01:13 PM
laravel 验证 表单构建

Création et validation de formulaires dans Laravel : simplification de la saisie utilisateur et de la gestion des données

Création et validation de formulaires dans Laravel : simplifier la saisie utilisateur et le traitement des données

Dans le développement d'applications Web, les formulaires sont l'un des moyens importants permettant aux utilisateurs d'interagir avec l'application. Laravel, en tant que framework PHP populaire, fournit de nombreux outils et fonctions pratiques pour simplifier le processus de création et de validation de formulaires. Cet article explique comment utiliser Laravel pour simplifier la saisie utilisateur et le traitement des données.

1. Construction de formulaires

Laravel fournit un moyen concis de créer des formulaires HTML. Nous pouvons utiliser le générateur de formulaires de Laravel pour générer un formulaire avec tous les champs et règles de validation nécessaires. Voici un exemple :

<form action="/register" method="POST">
    @csrf
    <label for="name">姓名:</label>
    <input type="text" name="name" id="name" value="{{ old('name') }}"><br>
  
    <label for="email">邮箱:</label>
    <input type="email" name="email" id="email" value="{{ old('email') }}"><br>
    
    <label for="password">密码:</label>
    <input type="password" name="password" id="password"><br>
    
    <label for="confirm_password">确认密码:</label>
    <input type="password" name="confirm_password" id="confirm_password"><br>
    
    <input type="submit" value="注册">
</form>
Copier après la connexion

Dans l'exemple ci-dessus, @csrf est utilisé pour générer un champ de jeton CSRF caché afin d'éviter la falsification de requêtes intersites. La fonction old est utilisée pour repeupler la dernière valeur soumise dans le champ du formulaire afin que l'utilisateur puisse voir la valeur précédemment remplie la prochaine fois qu'il la remplira. @csrf用于生成一个隐藏的CSRF令牌域,以避免跨站请求伪造。old函数用于将上次提交的值重新填充到表单字段中,以便用户在下次填写时可以看到之前填写的值。

二、表单验证

在Laravel中,表单验证是一项重要的工作。我们可以使用Laravel提供的验证器来轻松地验证用户输入的数据。下面是一个例子:

public function register(Request $request)
{
    $validatedData = $request->validate([
        'name' => 'required',
        'email' => 'required|email|unique:users',
        'password' => 'required|min:6|confirmed',
    ]);
    
    // 在此处进行用户注册逻辑...
}
Copier après la connexion

在上面的例子中,validate方法会根据指定的验证规则进行表单验证。如果验证失败,会自动将错误信息返回给用户。如果验证通过,将返回一个包含所有已验证数据的数组。

验证规则使用了一些常见的规则,例如required表示字段是必填的,email表示字段必须是有效的电子邮箱地址,unique:users表示字段在指定的数据库表中必须是唯一的,min:6表示字段的最小长度是6个字符,confirmed表示字段的值必须与确认字段的值匹配。

三、自定义验证规则

除了常见的验证规则,我们还可以自定义验证规则来满足应用程序的特定需求。下面是一个例子:

public function register(Request $request)
{
    $validatedData = $request->validate([
        'name' => 'required',
        'email' => 'required|email|unique:users',
        'password' => 'required|min:6|confirmed',
        'phone' => 'required|valid_phone_number',
    ]);

    // 在此处进行用户注册逻辑...
}

Validator::extend('valid_phone_number', function ($attribute, $value, $parameters, $validator) {
    return preg_match('/^[d]{11}$/', $value);
});
Copier après la connexion

在上面的例子中,我们使用Validator::extend方法来添加了一个名为valid_phone_number

2. Validation du formulaire

Dans Laravel, la validation du formulaire est une tâche importante. Nous pouvons facilement valider les données saisies par l'utilisateur à l'aide des validateurs fournis par Laravel. Voici un exemple :

rrreee

Dans l'exemple ci-dessus, la méthode validate effectuera la validation du formulaire en fonction des règles de validation spécifiées. Si la vérification échoue, un message d'erreur sera automatiquement renvoyé à l'utilisateur. Si la validation réussit, un tableau contenant toutes les données validées sera renvoyé. 🎜🎜Les règles de validation utilisent certaines règles communes, telles que obligatoire signifie que le champ est obligatoire, email signifie que le champ doit être une adresse e-mail valide, unique : utilisateurs indique que le champ doit être unique dans la table de base de données spécifiée, <code>min:6 indique que la longueur minimale du champ est de 6 caractères et confirmé indique la valeur du champ Doit correspondre à la valeur du champ de confirmation. 🎜🎜3. Règles de vérification personnalisées🎜🎜En plus des règles de vérification communes, nous pouvons également personnaliser les règles de vérification pour répondre aux besoins spécifiques de l'application. Voici un exemple : 🎜rrreee🎜Dans l'exemple ci-dessus, nous utilisons la méthode Validator::extend pour ajouter une règle de validation personnalisée nommée valid_phone_number. Cette règle utilise des expressions régulières pour vérifier que le numéro de téléphone est légitime. 🎜🎜 Résumé : 🎜🎜 En utilisant le générateur et le validateur de formulaires de Laravel, nous pouvons facilement créer et valider des formulaires. Cela simplifie non seulement la saisie des utilisateurs et le traitement des données, mais améliore également la sécurité des applications. J'espère que cet article pourra aider les lecteurs à mieux comprendre et appliquer les fonctions de création de formulaires et de validation dans Laravel. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

PHP vs Flutter : le meilleur choix pour le développement mobile PHP vs Flutter : le meilleur choix pour le développement mobile May 06, 2024 pm 10:45 PM

PHP et Flutter sont des technologies populaires pour le développement mobile. Flutter excelle dans les capacités multiplateformes, les performances et l'interface utilisateur, et convient aux applications qui nécessitent des performances élevées, une interface utilisateur multiplateforme et personnalisée. PHP convient aux applications côté serveur avec des performances inférieures et non multiplateformes.

Comment utiliser le mappage objet-relationnel (ORM) en PHP pour simplifier les opérations de base de données ? Comment utiliser le mappage objet-relationnel (ORM) en PHP pour simplifier les opérations de base de données ? May 07, 2024 am 08:39 AM

Les opérations de base de données en PHP sont simplifiées à l'aide d'ORM, qui mappe les objets dans des bases de données relationnelles. EloquentORM dans Laravel vous permet d'interagir avec la base de données en utilisant une syntaxe orientée objet. Vous pouvez utiliser ORM en définissant des classes de modèle, en utilisant des méthodes Eloquent ou en créant un système de blog dans la pratique.

Analyse des avantages et inconvénients des outils de tests unitaires PHP Analyse des avantages et inconvénients des outils de tests unitaires PHP May 06, 2024 pm 10:51 PM

Analyse de l'outil de test unitaire PHP : PHPUnit : convient aux grands projets, fournit des fonctionnalités complètes et est facile à installer, mais peut être verbeux et lent. PHPUnitWrapper : adapté aux petits projets, facile à utiliser, optimisé pour Lumen/Laravel, mais a des fonctionnalités limitées, ne fournit pas d'analyse de couverture de code et dispose d'un support communautaire limité.

Comparaison des dernières versions de Laravel et CodeIgniter Comparaison des dernières versions de Laravel et CodeIgniter Jun 05, 2024 pm 05:29 PM

Les dernières versions de Laravel 9 et CodeIgniter 4 fournissent des fonctionnalités et des améliorations mises à jour. Laravel9 adopte l'architecture MVC et fournit des fonctions telles que la migration de bases de données, l'authentification et le moteur de modèles. CodeIgniter4 utilise l'architecture HMVC pour fournir le routage, l'ORM et la mise en cache. En termes de performances, le modèle de conception basé sur le fournisseur de services de Laravel9 et le framework léger de CodeIgniter4 lui confèrent d'excellentes performances. Dans les applications pratiques, Laravel9 convient aux projets complexes qui nécessitent de la flexibilité et des fonctions puissantes, tandis que CodeIgniter4 convient au développement rapide et aux petites applications.

Laravel - Commandes artisanales Laravel - Commandes artisanales Aug 27, 2024 am 10:51 AM

Laravel - Artisan Commands - Laravel 5.7 est livré avec une nouvelle façon de traiter et de tester de nouvelles commandes. Il inclut une nouvelle fonctionnalité de test des commandes artisanales et la démonstration est mentionnée ci-dessous ?

Comment les capacités de traitement des données de Laravel et de CodeIgniter se comparent-elles ? Comment les capacités de traitement des données de Laravel et de CodeIgniter se comparent-elles ? Jun 01, 2024 pm 01:34 PM

Comparez les capacités de traitement des données de Laravel et CodeIgniter : ORM : Laravel utilise EloquentORM, qui fournit un mappage relationnel classe-objet, tandis que CodeIgniter utilise ActiveRecord pour représenter le modèle de base de données en tant que sous-classe de classes PHP. Générateur de requêtes : Laravel dispose d'une API de requêtes chaînées flexible, tandis que le générateur de requêtes de CodeIgniter est plus simple et basé sur des tableaux. Validation des données : Laravel fournit une classe Validator qui prend en charge les règles de validation personnalisées, tandis que CodeIgniter a moins de fonctions de validation intégrées et nécessite un codage manuel des règles personnalisées. Cas pratique : l'exemple d'enregistrement d'utilisateur montre Lar

Laravel vs CodeIgniter : quel framework est le meilleur pour les grands projets ? Laravel vs CodeIgniter : quel framework est le meilleur pour les grands projets ? Jun 04, 2024 am 09:09 AM

Lors du choix d'un framework pour de grands projets, Laravel et CodeIgniter ont chacun leurs propres avantages. Laravel est conçu pour les applications d'entreprise, offrant une conception modulaire, une injection de dépendances et un ensemble de fonctionnalités puissantes. CodeIgniter est un framework léger plus adapté aux projets de petite et moyenne taille, mettant l'accent sur la rapidité et la facilité d'utilisation. Pour les grands projets avec des exigences complexes et un grand nombre d'utilisateurs, la puissance et l'évolutivité de Laravel sont plus adaptées. Pour les projets simples ou les situations avec des ressources limitées, les capacités de développement légères et rapides de CodeIgniter sont plus idéales.

Lequel est le plus adapté aux débutants, Laravel ou CodeIgniter ? Lequel est le plus adapté aux débutants, Laravel ou CodeIgniter ? Jun 05, 2024 pm 07:50 PM

Pour les débutants, CodeIgniter a une courbe d'apprentissage plus douce et moins de fonctionnalités, mais couvre les besoins de base. Laravel offre un ensemble de fonctionnalités plus large mais a une courbe d'apprentissage légèrement plus raide. En termes de performances, Laravel et CodeIgniter fonctionnent bien. Laravel dispose d'une documentation plus complète et d'un support communautaire actif, tandis que CodeIgniter est plus simple, léger et possède de solides fonctionnalités de sécurité. Dans le cas pratique de la création d'une application de blog, EloquentORM de Laravel simplifie la manipulation des données, tandis que CodeIgniter nécessite une configuration plus manuelle.

See all articles