0%
Gestion des formulaires et validation

Formulaires

Recevoir des données d'un inconnu sans lui faire confiance.

15-20 min

Gestion des formulaires et validation

Un formulaire est le seul endroit d'une application web où un inconnu écrit directement dans votre système. Tout ce qui en sort est suspect : un champ requis vide, un âge négatif, une adresse électronique inventée, un nom de deux mille caractères, un <script> dans un commentaire, une valeur envoyée depuis un client qui n'est pas votre page.

La difficulté n'est pas de lire les paramètres — getParameter suffit. Elle est ailleurs, dans trois problèmes que les tutoriels superficiels sautent volontiers.

Le premier est l'encodage. Un visiteur saisit « Genève », vous enregistrez « Genève ». Le bug n'apparaît que sur les accents, donc jamais dans les jeux de test anglophones, et sa correction ne se trouve pas là où on la cherche : ni dans la page, ni dans la base, mais dans un filtre appliqué à la requête avant toute lecture.

Le deuxième est le réaffichage. Un formulaire rejeté doit revenir à l'utilisateur avec ses saisies conservées et les messages d'erreur placés à côté des champs concernés. Le vider, c'est faire retaper huit champs à cause d'une case oubliée — et c'est la première cause d'abandon d'un tunnel de commande.

Commentaires

Les commentaires sont alimentés par GitHub Discussions

Connectez-vous avec GitHub pour participer à la discussion

Lien copié !