Blog Alphorm Logo de blog informatique spécialisé en technologie et solutions IT
  • Développement
  • 3D et Animation
  • Cybersécurité
  • Infrastructure
  • Virtualisation
  • Réseaux
  • Bureautique
  • BDD
En cours de lecture : Validation Formulaire et Mise à Jour Article
Agrandisseur de policeAa
Blog AlphormBlog Alphorm
  • Développement
  • 3D et Animation
  • Cybersécurité
  • Infrastructure
  • Virtualisation
  • Réseaux
  • Bureautique
  • BDD
Search
  • Développement
  • 3D et Animation
  • Cybersécurité
  • Infrastructure
  • Virtualisation
  • Réseaux
  • Bureautique
  • BDD
Suivez-nous
© Alphorm 2024 - Tous droits réservés
Développement

Validation Formulaire et Mise à Jour Article

L'Équipe Alphorm Par L'Équipe Alphorm 9 janvier 2025
Partager
Partager

La mise à jour des articles dans une base de données peut être complexe en raison des risques de validation incorrecte des données.

Sans une validation adéquate, des erreurs peuvent survenir, compromettant l’intégrité des données et l’expérience utilisateur.

Cet article explore l’utilisation de ArticleRequest pour valider efficacement les données d’un formulaire de mise à jour d’article, assurant ainsi une mise à jour sécurisée et conforme.

Table de matière
Mise à jour avec update dans ArticleControllerRègles de validation avec ArticleRequestTester la validation dynamique des formulairesFAQConclusion

Formation Laravel : Le Guide Complet du Débutant

Initiez-vous à Laravel et réalisez votre première application en toute confiance.

Découvrir cette formation

Dans cette section, vous allez apprendre à valider les données d’un formulaire de mise à jour d’article, puis à les insérer ou mettre à jour en base de données. Nous allons utiliser la méthode update dans le contrôleur et définir des règles de validation via ArticleRequest.

Cela garantit que seules des données conformes aux règles spécifiées seront enregistrées, tout en offrant une gestion fluide des erreurs.

Mise à jour avec update dans ArticleController

Pour mettre à jour un article, vous devez d’abord ajouter ou modifier cette méthode dans le contrôleur ArticleController :

Voici l’implémentation de fonction update

				
					
 public function update(ArticleRequest $request, Article $article)
{
abort_if(auth()->id() != $article->user_id, 403);
$validatedData = $request->validated();
$validatedData['category_id'] = request('category', null);
$article = Auth::user()->articles()->updateOrCreate(['id'=>$article->id], $validatedData);
$success = 'Article modifié';
return redirect()->route('articles.edit', ['article'=>$article->slug])->withSuccess($success);
}

				
			

Ce que vous faites ici :

  • Vous validez les données grâce à la méthode validated de ArticleRequest.
  • Vous utilisez updateOrCreate pour simplifier la gestion de la mise à jour ou de la création d’un article.
  • Vous vérifiez les autorisations avec abort_if pour garantir que seul l’auteur peut modifier l’article.
Astuce Pratique : En utilisant ArticleRequest, vous évitez de répéter les règles de validation dans plusieurs méthodes, ce qui rend le code plus maintenabl

Règles de validation avec ArticleRequest

Pour s’assurer que les données soumises respectent vos attentes, vous allez définir des règles de validation dans ArticleRequest . Voici un exemple de règles :

				
					
 public function rules()
{
return [
'title'=> $this->method() == 'POST' ?
['required', 'max:20', 'unique:articles,title'] :
['required', 'max:20', Rule::unique('articles', 'title')->ignore($this->article)],
'content'=> ['required'],
'category'=>['sometimes', 'nullable', 'exists:categories,id'],
];
}

				
			

Ce que vous devez savoir :

Validation dynamique pour le titre :

  • Si vous créez un nouvel article, le titre doit être unique (unique :articles,title).
  • Si vous mettez à jour un article existant, vous ignorez l’article actuel pour éviter un conflit avec son propre titre (Rule ::unique()->ignore($this->article)).

Validation pour le contenu :

  • Ce champ est obligatoire et ne peut pas être vide.

Validation pour la catégorie :

  • Ce champ est facultatif (nullable), mais si une valeur est fournie, elle doit exister dans la table categories.
Erreur Courante : Ne pas gérer correctement les règles de validation : Assurez-vous que les règles définissent clairement les contraintes selon le type d’opération (création ou mise à jour).

Tester la validation dynamique des formulaires

Pour tester le fonctionnement de cette validation, voici quelques exemples de cas :

Cas de réussite :

  • Remplissez correctement tous les champs avec des valeurs valides.
  • Cliquez sur « Modifier ». Si tout est valide, l’article est mis à jour, et un message de confirmation s’affiche.

Voici la page de modification

Formulaire de mise à jour d'article Laravel

Champs vides :

  • Laissez les champs title ou content vides.
  • Cliquez sur « Modifier ». Vous verrez des messages d’erreur indiquant que ces champs sont requis.

Voilà l’affichage erreur

Formulaire de mise à jour d'article avec erreur

Titre déjà existant :

  • Entrez un titre qui existe déjà dans un autre article (dans le cas d’une création).
  • Cliquez sur « Modifier ». Une erreur s’affiche, indiquant que le titre doit être unique.

Message de confirmation après modification

  • Lorsque vous mettez à jour un article avec succès, un message de confirmation est affiché. Par exemple :
Formulaire de mise à jour d'article blog Laravel.

Ce message aide l’utilisateur à savoir que l’opération a bien été réalisée.

Formez-vous gratuitement avec Alphorm !

Maîtrisez les compétences clés en IT grâce à nos formations gratuites et accélérez votre carrière dès aujourd'hui.

Démarrer gratuitement
illustration processus de paiement en ligne avec étapes claires et convivialité

FAQ

Comment valider les données d'un formulaire de mise à jour d'article ?
Pour valider les données d’un formulaire de mise à jour d’article, utilisez la méthode ‘validated’ de l’objet ArticleRequest. Cela permet de vérifier que les données respectent les règles définies, garantissant ainsi une saisie correcte et conforme avant leur insertion ou mise à jour en base de données. Cette approche centralise les règles de validation, évitant les répétitions et simplifiant la maintenance du code.
Quelles sont les règles de validation pour le titre d'un article ?
Le titre d’un article doit être unique et ne pas dépasser 20 caractères. Lors de la création, il doit être vérifié par ‘unique:articles,title’. Lors de la mise à jour, utilisez ‘Rule::unique(‘articles’, ‘title’)->ignore($this->article)’ pour éviter les conflits avec le titre existant. Ces règles garantissent que chaque article possède un titre distinct, essentiel pour la gestion des articles.
Comment sécuriser la mise à jour d'un article par son auteur uniquement ?
Pour sécuriser la mise à jour d’un article par son auteur, utilisez ‘abort_if(auth()->id() != $article->user_id, 403)’ dans la méthode update du contrôleur. Cette vérification assure que seul l’auteur authentifié peut modifier son article, renforçant ainsi la sécurité et l’intégrité des données en empêchant les modifications non autorisées.
Quels sont les cas de tests pour la validation de formulaire ?
Les cas de tests incluent : 1) Remplir tous les champs correctement pour vérifier une mise à jour réussie et l’affichage d’un message de confirmation. 2) Laisser des champs vides pour s’assurer que des messages d’erreur apparaissent. 3) Utiliser un titre déjà existant pour vérifier que l’erreur de non-unicité est bien déclenchée. Ces tests garantissent le bon fonctionnement de la validation.
Comment utiliser updateOrCreate pour gérer les articles ?
La méthode ‘updateOrCreate’ simplifie la gestion des articles en vérifiant leur existence dans la base de données. Si l’article existe, il est mis à jour ; sinon, un nouvel article est créé. Cette approche optimise le code en combinant la logique de mise à jour et de création, ce qui est particulièrement utile pour les opérations fréquentes de gestion de contenu.

Conclusion

En maîtrisant la validation et la mise à jour des articles, vous garantissez une gestion efficace et sécurisée de votre contenu. Comment pourriez-vous appliquer ces principes à d’autres aspects de votre développement web ?

ÉTIQUETÉ : Laravel
Facebook
Twitter
LinkedIn
Email
WhatsApp
Par L'Équipe Alphorm
Démocratiser la Connaissance Informatique pour Tous !
Suivre :
L'Équipe Alphorm, c'est la démocratisation de la connaissance informatique. Passionnés et dévoués, nous sommes là pour vous guider vers le succès en rendant la technologie accessible à tous. Rejoignez notre aventure d'apprentissage et de partage. Avec nous, le savoir IT devient une ressource inspirante et ouverte à tous dans un monde numérique en constante évolution.

Derniers Articles

  • Techniques pour gérer les fichiers texte en C#
  • Créer et lire un fichier CSV avec C#
  • JSON : Comprendre et Utiliser Efficacement
  • Créer une Base SQLite dans C#
  • Lecture des données SQLite simplifiée
Laisser un commentaire Laisser un commentaire

Laisser un commentaire Annuler la réponse

Vous devez vous connecter pour publier un commentaire.

Blog Alphorm
  • Développement
  • 3D et Animation
  • Cybersécurité
  • Infrastructure
  • Virtualisation
  • Réseaux
  • Bureautique
  • BDD
En cours de lecture : Validation Formulaire et Mise à Jour Article

© Alphorm - Tous droits réservés