Gerer le retour d’erreurs

La fonction verifier() du formulaire peut retourner des erreurs si les champs soumis ne sont pas corrects ; nous le verrons plus tard. Pour afficher ces erreurs dans le HTML du formulaire, des classes CSS et un nommage sont proposés :

En tête du formulaire, des erreurs (ou des messages de réussite) généraux :

[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]

Pour chaque champ, un message et une classe CSS sur l’item de liste pour marquer visuellement l’erreur. On calcule le message du champ grâce à la variable #ENV{erreurs} qui recense toutes les erreurs des champs :

#SET{erreurs,#ENV**{erreurs}|table_valeur{xxx}}
<li class="editer_xxx obligatoire[ (#GET{erreurs}|oui)erreur]">
	[<span class='erreur_message'>(#GET{erreurs})</span>]
</li>

Ceci donne, au complet avec le formulaire précédent :

<div class="formulaire_spip formulaire_demo">
[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]

<form action="#ENV{action}" method="post"><div>
	#ACTION_FORMULAIRE{#ENV{action}}
	<ul>
		#SET{erreurs,#ENV**{erreurs}|table_valeur{la_demo}}
		<li class="editer_la_demo obligatoire[ (#GET{erreurs}|oui)erreur]">
			<label for="la_demo">La demo</label>
			[<span class='erreur_message'>(#GET{erreurs})</span>]
			<input type='text' name='la_demo' id='la_demo' value="#ENV{la_demo}" />
		</li>
	</ul>
	<p class="boutons"><input type="submit" class="submit" value="<:pass_ok:>" /></p>
</div></form>
</div>

Auteur Matthieu Marcillaud Publié le : Mis à jour : 12/03/23

Traductions : English, Español, français