Rechercher
Saisissez au moins deux caractères, sans donnée personnelle.

    BibliothèqueArticles et FAQ Votre projetDemander un devis
    LangueFR
    Guides pratiques

    Concevoir un formulaire de contact qui aide vraiment

    Un formulaire utile permet de formuler une demande sans effort inutile et de comprendre ce qui se passe après l’envoi. Sa réussite se juge sur le parcours complet, pas sur le clic du bouton.

    Voir la méthode

    Illustration de la préparation d’un projet web : Concevoir un formulaire de contact qui aide vraiment
    Lire le parcours

    Suivre une demande au-delà du bouton Envoyer

    Ce schéma distingue quatre contrôles. Selon l’organisation, l’enregistrement et la notification peuvent utiliser des systèmes différents : le message affiché doit correspondre à ce qui a réellement été confirmé.

    1. Saisie

      La personne comprend les champs et peut corriger une erreur.

    2. Réception serveur

      Le site valide les données et confirme le résultat de l’opération prévue.

    3. Suivi interne

      La demande existe dans le canal de traitement convenu.

    4. Prise en charge

      Un responsable peut retrouver la demande et donner une suite.

    Scénarios pédagogiques fictifs à adapter à votre système. Cette page n’effectue aucune opération sur votre site.

    Ouvrir la situation à vérifier

    Le site affiche un succès, mais rien n’arrive
    Ce que l’on sait
    Le seul message à l’écran ne prouve pas la réception par une personne.
    La vérification suivante
    Rapprocher une demande de test de son enregistrement, de sa notification éventuelle et du canal réellement suivi.
    Le visiteur corrige un champ et perd tout le texte
    Ce que l’on sait
    Une erreur de saisie bloque la tâche ; elle n’exige pas nécessairement de tout recommencer.
    La vérification suivante
    Tester une erreur récupérable et vérifier les informations conservées, le message lié au champ et la reprise au clavier.
    La réponse reste incertaine après une interruption
    Ce que l’on sait
    Une absence de confirmation ne permet pas, à elle seule, de savoir si la demande a été enregistrée.
    La vérification suivante
    Définir un moyen de vérifier l’état et éviter d’annoncer arbitrairement un succès ou un échec.
    La même demande est renvoyée après un délai
    Ce que l’on sait
    Dans ce contrat fictif, deux envois identiques portant TEST-A doivent correspondre à une seule demande.
    La vérification suivante
    Rejouer les deux envois dans la copie d’essai et rapprocher l’objet créé et les notifications. Cette propriété doit être définie par le service ; le bouton ne la garantit pas.
    Trace à conserver
    Référence TEST-A, chronologie des essais, nombre de demandes et de notifications ; aucune donnée personnelle réelle.

    Référence technique : W3C WAI · User Notification · Consultée le .

    Partir des demandes reçues et de leur traitement

    Regroupez les demandes habituelles : question, devis, assistance ou proposition. Demandez-vous quelles informations sont indispensables pour orienter chacune et lesquelles peuvent être recueillies dans la réponse. Un champ « budget » obligatoire, par exemple, écarte les personnes qui veulent d’abord comprendre le périmètre ; il faut pouvoir justifier son utilité réelle.

    Indiquez clairement le destinataire de la demande et ce que la personne peut attendre ensuite. Ne promettez un délai de réponse que si l’équipe peut le tenir. Si plusieurs services reçoivent les messages, définissez une règle d’orientation interne plutôt que de demander au visiteur de connaître votre organisation.

    • Objet de chaque type de demande.
    • Champs indispensables et raison de leur collecte.
    • Responsable de lecture et de réponse.

    Rendre la saisie compréhensible et récupérable

    Test d’un formulaire de contact sur téléphone avec contrôle de la réception sur ordinateur

    Associez chaque contrôle à un libellé visible, signalez les champs obligatoires et donnez des exemples seulement lorsqu’ils aident à répondre. Une indication placée uniquement dans un placeholder disparaît pendant la saisie. Les explications MDN sur la structure des formulaires montrent le rôle des libellés et des groupes de champs.

    Testez au clavier, sur téléphone et avec des textes longs. En cas d’erreur, expliquez le problème près du champ concerné, conservez les valeurs déjà saisies et donnez un chemin clair pour corriger. Vérifiez aussi ce qui arrive si la connexion se coupe ou si l’envoi est répété. Le message de succès doit confirmer l’action sans exposer les données personnelles.

    Limiter les données et expliquer leur usage

    Collectez les informations utiles au traitement de la demande et expliquez la finalité, les personnes concernées et la manière d’obtenir plus d’informations sur le traitement. La CNIL recommande une information au moment de la collecte, éventuellement avec un premier niveau près du formulaire et un lien vers la politique de confidentialité. Adaptez ces mentions au traitement réellement effectué.

    Évitez de demander par défaut des documents sensibles ou un compte pour poser une simple question. Si des pièces jointes sont nécessaires, précisez les formats, la taille et la conservation prévus. Les dispositifs antispam doivent être testés pour ne pas empêcher une personne légitime d’envoyer sa demande.

    • Information de collecte à jour.
    • Données et pièces jointes nécessaires seulement.
    • Alternative de contact accessible.

    Recetter le parcours jusqu’à la réponse

    Envoyez des demandes d’essai avec un champ vide, une adresse mal formée, un texte long et une saisie correcte. Vérifiez le message affiché, la réception au bon endroit, la lisibilité du contenu reçu et la capacité de l’équipe à répondre. Une page de confirmation seule ne prouve pas que le message est arrivé.

    Après mise en ligne, contrôlez périodiquement le trajet complet, notamment après un changement d’hébergement, de messagerie ou de protection antispam. Le guide de recette avant publication aide à placer ce test dans l’ensemble des vérifications.

    Préparez une petite matrice de recette avec cinq situations : envoi correct, champ obligatoire absent, adresse invalide, interruption réseau et nouvel envoi après attente. Pour chacune, notez l’appareil, l’action, le message affiché, les valeurs conservées et l’état reçu par l’équipe. Utilisez un identifiant de test et des données fictives pour suivre le trajet sans copier de coordonnées personnelles dans le compte rendu.

    Le message d’erreur doit expliquer quoi corriger et permettre de reprendre la tâche. Une couleur seule ne donne pas cette instruction. Le tutoriel W3C WAI sur les notifications de formulaire décrit comment associer les erreurs aux champs et rendre les retours compréhensibles. Vérifiez aussi le double clic : il ne doit pas conduire l’équipe à traiter deux fois une même demande.

    Distinguer saisie, sélection et envoi confirmé

    Dans un formulaire avec suggestions, vérifiez la valeur visible et l’identifiant transmis après sélection puis correction du texte. Une commune affichée ne doit pas conserver par erreur la référence de la proposition précédente. Les commandes secondaires, comme ajouter un document, doivent rester distinctes de l’envoi.

    Suivez ensuite attente, échec et réussite. Un message « reçu » exige une confirmation réelle du service. En cas d’échec, les champs doivent pouvoir être repris ; si le résultat est incertain, expliquez comment vérifier plutôt que d’inciter à répéter aveuglément la demande.

    Choisir les liens, boutons et actions d’une interface · Concevoir une autocomplétion pour choisir une valeur · Rédiger et annoncer les messages d’état d’une interface

    Réduire la ressaisie tout en conservant des libellés et une validation compréhensibles.

    Cas fictif : un formulaire de contact distingue nom, adresse électronique et téléphone. Utilisez les jetons adaptés, puis essayez un profil de test enregistré et une saisie manuelle. L’autoremplissage peut produire des valeurs inattendues : contrôlez encore les champs côté serveur. Ne détournez pas autocomplete pour désactiver arbitrairement une aide utile aux personnes.

    Exemple fictif : une inscription comporte un contact principal et un autre participant. Deux champs email ne demandent pas forcément la même valeur. Les groupes section-contact email et section-participant email indiquent deux ensembles distincts ; le jeton section- est placé en premier. Cette indication aide l’autoremplissage, sans garantir le comportement de chaque navigateur.

    Choisissez aussi le sens du champ : name désigne un nom complet, organization une organisation. Gardez les libellés visibles et acceptez les noms selon les besoins réels, sans imposer arbitrairement un découpage prénom/nom. Testez remplissage automatique, correction manuelle et contrôle serveur : un champ prérempli ne devient ni une coordonnée vérifiée ni une autorisation d’envoyer à une autre personne.

    • Les valeurs sont placées dans les bons champs ; les erreurs permettent une correction sans perdre les autres réponses.

    Faites défiler le tableau horizontalement pour lire toutes les colonnes. Au clavier, placez le focus sur le tableau puis utilisez les flèches.

    Formulaire fictif : distinguer les données attendues
    Champ illustratifIndication autocompleteVérification utile
    Nom complet du contactnameLe libellé et la saisie restent compréhensibles
    Email du contact principalsection-contact emailLa bonne personne est identifiée après remplissage et correction
    Email d’un autre participantsection-participant emailLes deux groupes restent distincts ; aucune valeur n’est supposée exacte
    • MDN HTML Autocomplete

      Attribut HTML indiquant au navigateur la nature des informations attendues et des indications de remplissage automatique.

    Vérifier la demande reçue

    Enveloppe ouverte dans un bac de réception près d’un ordinateur
    Relier la confirmation affichée à la réception attendue de la demande.

    Cas proposé : le formulaire affiche un succès alors que son destinataire n’a reçu aucun message. La confirmation à l’écran ne clôt pas le parcours de traitement.

    Testez avec des données fictives dans un environnement autorisé. Reliez action, réponse, réception et responsable du suivi ; distinguez échec d’envoi, classement du message et absence de traitement.

    • Utiliser une demande fictive identifiable
    • Confirmer la réception attendue
    • Identifier le responsable du suivi

    Ne pas confondre envoi et réception

    Une confirmation à l’écran prouve seulement l’état que le serveur a pu confirmer. Testez la réception dans la boîte métier, la possibilité de répondre et les doublons après nouvelle tentative. En cas d’erreur, indiquez une suite utilisable et conservez les champs non sensibles lorsque le contexte le permet.

    Écrire quatre messages selon le résultat de l’envoi

    Exemple fictif : une demande de maintenance passe par les états ci-dessous. Le message doit dire ce qui est établi et quelle action est possible. Une référence de demande peut aider au suivi ; elle ne constitue pas une preuve de lecture par l’équipe.

    Faites défiler le tableau horizontalement pour lire toutes les colonnes. Au clavier, placez le focus sur le tableau puis utilisez les flèches.

    Textes proposés pour un formulaire de contact
    État observéMessage à adapterCondition à vérifier
    Adresse invalide« Indiquez une adresse e-mail complète, par exemple nom@example.com. »Relier cette instruction au champ et conserver les autres réponses non sensibles.
    Traitement en cours« Envoi en cours. La confirmation apparaîtra ici. »Afficher une attente sans annoncer une réception prématurée.
    Résultat inconnu« Nous ne pouvons pas confirmer l’envoi. Vérifiez le suivi avant de renouveler la demande. »Proposer un suivi réellement disponible ou une autre manière de contacter l’équipe.
    Enregistrement confirmé« Votre demande est enregistrée sous la référence DEMO-104. »N’afficher la référence qu’après confirmation de l’enregistrement ; tester séparément la notification e-mail.
    • W3C WAI · User Notification

      Ces formulations sont des exemples éditoriaux. Le tutoriel WAI précise les retours de formulaire et l’association des erreurs aux contrôles ; adaptez les termes au traitement réellement assuré.

    Contenu mis à jour le

    Repères documentaires pour ce sujet

    Repères documentaires pour ce sujet
    RéférenceValeur ou syntaxePortée du repère
    WCAG 2.2 · 2.5.8
    24 × 24 CSS pxUne cible plus petite peut satisfaire le critère grâce à l’espacement ; d’autres exceptions existent.
    WCAG 2.2 · 1.4.10
    320 CSS pxContenu vertical sans défilement dans deux dimensions ; exceptions pour les contenus intrinsèquement bidimensionnels.
    WCAG 2.2 · 3.3.7
    A · same processDans un même processus, une information déjà fournie doit être préremplie ou disponible à la sélection, sauf exceptions du critère. L’autocomplétion du navigateur seule ne suffit pas ; le site doit proposer la donnée déjà reçue ou éviter de la redemander.

    Les dates indiquent la consultation des références. Ces repères ne constituent ni un audit du site ni une déclaration globale de conformité.

    Matrice de recette à adapter au projet

    Ces contrôles proposés utilisent des cas fictifs. Décidez du comportement attendu avec l’équipe, notez le résultat et attribuez les écarts non résolus avant publication.

    Faites défiler le tableau horizontalement pour lire toutes les colonnes. Au clavier, placez le focus sur le tableau puis utilisez les flèches.

    Cas de test, résultats attendus et preuves utiles
    CasRésultat attenduPreuve à conserver
    Une adresse de courriel invalide accompagne un message long.L’erreur identifie le champ et le message reste disponible pour correction.Message témoin avant et après refus, texte de l’erreur et association au champ courriel.
    Le serveur refuse une demande après validation dans le navigateur.Le résultat n’annonce pas une réussite ; les données utiles restent récupérables pour une correction.Réponse de test, message affiché et état des champs non sensibles.
    Un double clic intervient pendant l’attente.Éviter deux traitements pour une même demande et afficher un état compréhensible.Identifiant de test, tentatives et nombre de demandes prises en charge.
    Le serveur accepte, mais le message est bloqué avant la boîte métier.Distinguer acceptation technique et réception ; déclencher le suivi prévu.Statut serveur, contrôle de réception et responsable averti.

    Questions fréquentes

    Faut-il multiplier les champs pour mieux qualifier une demande ?

    Demandez ce qui est nécessaire pour orienter et répondre à la demande. Expliquez les champs inhabituels et gardez les éléments facultatifs réellement facultatifs. Si un détail peut être obtenu ensuite, il n’a pas forcément besoin de bloquer le premier contact. Testez la correction des erreurs sans perte des données utiles.