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 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 class="editer-groupe">
        #SET{erreurs,#ENV**{erreurs}|table_valeur{la_demo}}
        <li class="editer 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 : 16/06/15

Traductions : English, Español, français