La collecte efficace de données utilisateur est cruciale pour les sites web modernes.
Sans une structure de formulaire adéquate, les interactions peuvent être frustrantes et peu sécurisées.
Cet article explore comment créer des formulaires HTML efficaces, sécurisés et conviviaux.
Lancez votre carrière de développeur web avec une formation pratique.
Bases du formulaire HTML
Les formulaire HTML sont un élément essentiel pour assurer l’intégration entre un utilisateur et un site web ou une application, à travers les données saisies et soumis par l’utilisateurs puis envoyé à un serveur web. Les formulaires ont une variété de taches ils sont couramment utilisés pour collecter des données, commentaires des clients, ou des demandes de personnes de manière structurée et organisée.
Dans cette partie vous allez créer un formulaire qui permet à l’utilisateur de saisir son nom, prénom et un message, puis de valider ses informations.
Pour créer ce formulaire vous auez besoin des éléments HTML suivants : la balise <form> et ses attributs, le champ <input> et ses attributs ,la balise <label> , la balise <textarea> et la balise <button> pour la soumission .
Formulaire
- L’élément<form> :Cet élément définit un formulaire . Il s’agit d’un élément conteneur qui contient tous les champs et boutons, il peut également recevoir quelques attributs spécifiques pour gérer son comportement. Toutes ses caractéristiques sont facultatives, mais il est recommandé de définir au moins les caractéristiques action et méthodologie.
Il contient deux attributs essentiels : L’attribut méthode est utilisé pour envoyer les données à un serveur via le formulaire , il peut prendre deux valeur « get » ou « post » .
Pour la méthode « get » les données envoyées sont visibles dans la barre d’adresse du navigateur, mais pour la méthode « post » les données sont envoyées dans le corps donc il est préferable d’utiliser celle ci pour la sécurité des informations .
Pour l’attribut action determine l’endroit (une URL) où les données collectées par le formulaire doivent être transmises.
- L’élement input :cette balise est utilisé pour créer les champs de saisie dans un formulaire , elle contient deux attributs ; L’attribut « type » définit quelle type de données est attendu dans le chaps de formulaire , peut etre : texte , email , date , url …
Et l’attribut « name » est ajouté pour définir le nom du champ, et pour identifier les données du champ lorsque le formulaire est soumis.
- Label :C’est une étiquette de chaque champ qui décrit ce que l’utilisateur doit saisir ; elle contient l’attribut « for » qui est utilisé pour associé l’étiquette a un élément du formulaire et attribut fait référence à l’id de l’élément correspondant.
- Textarea :elle est utilisé pour créer des champs de saisie de texte multilignes. Elle peut être ajouter pour saisir des commentaires , des descriptions ou de long message . vous pouvez personnalisez ce champ en définissant le noms de colonnes et de lignes avec les attributs « rows » and « cols ».
- L’élement button :pour permettre à l’utilisateur d’envoyer les données renseignées dans le formulaire. Il contient l’attribut « type » qui prend les valeurs ; « submit » pour soumettre les données du formulaire , ou la valeur « reset » pour render les champs du formulaire a leurs valeurs initial . Et l’attribut « Value » la valeur que l’on souhaite qu’elle soit ecrit sur le boutton .
Lorsque l’utilisateur va cliquer sur le boutton valider ce formulaire , il sera dirigé vers la parge traitement.html , qui est mis dans l’attribut « action » .
La page du traitement du formulaire si vous utilisez l’action « get » :
Champs de saisie HTML
Comme il est cité précédemment le champ input peut avoir différents types, chacun adapté à des types de données spécifiques.
Voici la liste des types de champs les plus courants :
Le champ de type email : Spécifique aux adresses email, la valeur saisie dans le champ sera automatiquement validée pour vérifier s’il s’agit du format d’une adresse mail valide avant que le formulaire soit envoyé.
Le champ de type password : Permet à l’utilisateur de saisir son mot de passe sans qu’il soit lisible à l’écran.
Le champ de type date : Permet à l’utilisateur de saisir une date, via un champ texte dont la valeur est validée ou avec un sélecteur de date.
Le champ de type url : Permet à l’utilisateur de saisir ou d’éditer une URL , avec une validation intégrée .
Le champ de type number : Permet à l’utilisateur de saisir des nombres numériques, des valeurs entières uniquement. Des mécanismes de validation sont intégrés pour rejeter les valeurs non-numériques.
Boutons radio HTML
Les boutons radio <input type= »radio »> sont généralement utilisés pour construire des groupes d’options parmi lesquelles on ne peut choisir qu’une valeur. Les « boutons radio » sont représentés par des cercles remplis lorsqu’ils sont sélectionnés.
- Aimez-vous cette formation ?
- Etes-vous majeur?
Voici les attributs principaux :
Name : Tous les boutons radio d’un même groupe doivent avoir le même « name » , ce qui signifie qu’une seule option doit être sélectionné . Pas comme dans ce cas si on met un « name » différent pour des éléments du même groupe.
Id: Chaque bouton radio à un identifiant « id » associé à l’attribut « for » dans l’étiquette <label> . Cela permet à l’utilisateur de cliquer sur le texte pour sélectionner l’option.
Value : Chaque bouton doit avoir une valeur unique qui va être ennoyée lorsque le formulaire sera soumis.
Checked : Vous pouvez utiliser l’attribut « checked » a l’une des options pour qu’elle soit sélectionnée par défaut.
Cases à cocher HTML
Les cases à cocher en HTML sont utilisées pour permettre à l’utilisateur de sélectionner plus d’une seule option parmi un ensemble. Ces cases à cocher sont affichés à l’aide du checkbox , qui est un élément input .Pour insérer une case à cocher sur la page web, il faut utiliser le code HTML: < input type= »checkbox » > .
-Quelles sont vos fruits préférés ?
L’attribut type « checkbox » commande au navigateur d’afficher une case à cocher. Par défaut, la case est carrée et aux dimensions standards. Il possède les mêmes attributs que les boutons radio : « id » pour l’identifiant de case à cocher, « name » pour le nom du groupe auquel cette case appartient, « value » étant la valeur envoyée lorsque la case est cochée. Vous pouvez aussi ajouter l’attribut « checked » pour qu’elle soit cochée par défaut.
Menus déroulants HTML
Les listes déroulantes en HTML sont utilisées pour permettre aux utilisateur de sélectionner une option dans un ensemble. Ils sont utilisés pour présenter un grands nombres d’options dans un espace réduit, de maniéré structurée et lisible.
-De quelle ville Etes-vous ?
La balise <select> : Cette liste déroulante est créée avec la balise <select name= » » > avec l’attribut « name » spécifie le nom du champ de formulaire.
La balise option : C’est la balise qui définit les options dans la liste déroulante.
La balise optgroup : Cette balise regroupe les options au sein de la liste, elle permet de rendre le menu plus organisé et clair lorsqu’il y a un grand nombre d’options. L’attribut label définit l’étiquette du groupe d’options. Cette étiquète est lisible par l’utilisateur pour indiquer la catégorie d’option.
Vous pouvez ajouter une sélection par défaut en ajoutant l’attribut « selected » à une balise <option>.
Valeurs par défaut HTML
L’ajout d’une valeur par défaut ou un texte indicatif dans les champs de saisie d’un formulaire aide l’utilisateur à facilement comprendre comment il doit remplir son formulaire. Dans cette partie vous allez voir deux attributs différents : « placeholder » et « value ».
Value : cet attribut définit la valeur par défaut dans le champs de saisie .
Exemple :
Placeholder : cet attribut est utilisé pour fournir un texte indicatif dans le champ de saisit , ce texte disparait une fois l’utilisateur commence a saisir une valeur . Cet attribut est utile pour fournir des indices contextuels sur ce qui doit être saisie dans les champs de formulaire .
Champs obligatoires HTML
Pour rendre un champ de formulaire obligatoire on utilise l’attribut « required » qui peut être ajouté aux éléments input, textarea ou select . Une fois que le champ est marqué comme « required » l’utilisateur ne peut pas soumettre le formulaire avant de remplir ce champ, le navigateur s’assure d’afficher un message au cas où ce dernier est resté vide.
Comme ceci :
Zones de saisie HTML
Afin de mieux organiser votre formulaire et le rendre plus lisible et organisé vous pouvez utiliser les balises <fieldset> et <legend> pour regrouper votre formulaire en section en associant une légende décrivant ce groupe.
<body>
<form method= »get » action= »traitement.html »>