form
Introduction aux formulaires
16/06/2008
1460 lectures
0 commentaire
3.67/5 (3 votes)
Si vous ne savez pas ce que sont les formulaires, vous verrez que vous les avez utilisés bien plus souvent que ce que vous ne pensez. Un formulaire est une zone où vous pouvez rentrer des informations qui seront collectées et utilisées. Par exemple, vous devez remplir un formulaire pour vous inscrire sur un site. Vous devez remplir également un formulaire pour vous connecter à ce site,... Voyons maintenant comment vous pourrez créer votre propre formulaire. Nous ne verrons ici que la balise englobante. Les balises servant à créer des zones de texte, liste déroulantes,... seront abordées dans d'autres cours.
Une chose à savoir est qu'il est nécessaire d'indiquer une balise form ouvrante et fermante pour délimiter le formulaire. Tout ce qui se trouvera entre ces balises sera considéré comme des données (en dehors du texte brut). Voyons maintenant les principaux attributs de la balise form.
Lorsqu'un formulaire sera envoyé (généralement grâce au click sur son bouton d'envoi), une page va être chargée pour traiter les données rentrées dans les champs du formulaire. C'est la valeur de l'attribut action qui va déterminer la page à charger. Donc, si vous tapez :
Cette balise indique qu'une fois que les données du formulaire seront remplies et que le bouton d'envoi aura été cliqué, la page pageX.php sera chargée. Cette page se trouve dans le répertoire pages qui se trouve lui-même dans le même répertoire que la page contenant le formulaire.
Il y a deux manières pour envoyer les données d'un formulaire à la page spécifiée dans l'attribut action. Il y a tout d'abord la méthode post. C'est celle qu'on doit utiliser pour les formulaires. Cette méthode va permettre de passer les données rentrées dans le formulaire à la page appelée. Ainsi, cette dernière pourra récupérer ces valeurs grâce à un petit script dans le langage choisit. Utiliser cette méthode vous garantit une certaine transparence, car l'utilisateur ne verra pas comment les données sont passées d'une page à l'autre, ce sera totalement invisible pour lui.
La deuxième méthode s'appelle get. Cette méthode sert à passer des valeurs via l'url de la page. Imaginez par exemple que la page à appeler se nomme pageX.php. Si le formulaire dispose d'un champ nommé login, que l'utilisateur rentre Zick comme valeur et qu'il envoie le formulaire, la page sera appelée avec une adresse du type :
L'utilisateur verra donc dans la barre d'adresse le nom des champs ainsi que la valeur qu'il a rentré dans ceux-ci. Ce n'est pas réellement grave mais cela est un peu inutile quand on sait qu'on peut utiliser la méthode post qui ne laisse rien transparaître des mécanismes d'arrière-plan.
C'est l'attribut method qui permet de définir quelle méthode sera utilisée. Cet attribut peut prendre deux valeurs : post et get. Voici par exemple comment appeler la même page que précédemment avec la méthode post :
Voyons maintenant comment préciser le type MIME des données à envoyer.
Généralement, un formulaire doit transmettre à la page appelée des données au format texte. Effectivement, un pseudo, une adresse e-mail,... sont transmit au format texte, mais parfois, ce format ne convient pas. Effectivement, il est, par exemple, impossible de transmettre un fichier en format texte. Pourtant, dans les formulaires d'upload, il existe un champ permettant d'aller chercher un fichier sur le PC de l'utilisateur et de l'uploader sur le serveur. Dans ce cas précis, nous devrons préciser un enctype spécial pour que le fichier puisse être transmit à la page définie dans le paramètre action. Quand les données à transmettre ne sont qu'en format texte, il n'est pas nécessaire de préciser cet attribut. Voyons, par exemple, comment définir un enctype pour des fichiers :
Ainsi, si le formulaire dispose d'un champ d'upload de fichier, ceux-ci seront bien transmit à la page appelée.
Un paramètre interessant est le paramètre target qui permet de définir l'endroit où la page appelée sera chargée. Par défaut, la page est chargée à la place de la page contenant le formulaire, mais vous pouvez, par exemple, définir un autre endroit. Voici les différentes valeurs que peut prendre cet attribut.
_blank : ouvre le lien dans une nouvelle fenêtre.
_top : ouvre le lien dans la fenêtre principale du navigateur.
_self : ouvre le lien dans la fenêtre courante.
_parent : ouvre le lien dans la page parent.
Voici donc comment ouvrir la page de traitement d'un formulaire dans une nouvelle fenêtre :
Une fois le bouton d'envoi cliqué, la page de traitement sera chargée dans une nouvelle fenêtre du navigateur.
form
Une chose à savoir est qu'il est nécessaire d'indiquer une balise form ouvrante et fermante pour délimiter le formulaire. Tout ce qui se trouvera entre ces balises sera considéré comme des données (en dehors du texte brut). Voyons maintenant les principaux attributs de la balise form.
action
Lorsqu'un formulaire sera envoyé (généralement grâce au click sur son bouton d'envoi), une page va être chargée pour traiter les données rentrées dans les champs du formulaire. C'est la valeur de l'attribut action qui va déterminer la page à charger. Donc, si vous tapez :
Cette balise indique qu'une fois que les données du formulaire seront remplies et que le bouton d'envoi aura été cliqué, la page pageX.php sera chargée. Cette page se trouve dans le répertoire pages qui se trouve lui-même dans le même répertoire que la page contenant le formulaire.
method
Il y a deux manières pour envoyer les données d'un formulaire à la page spécifiée dans l'attribut action. Il y a tout d'abord la méthode post. C'est celle qu'on doit utiliser pour les formulaires. Cette méthode va permettre de passer les données rentrées dans le formulaire à la page appelée. Ainsi, cette dernière pourra récupérer ces valeurs grâce à un petit script dans le langage choisit. Utiliser cette méthode vous garantit une certaine transparence, car l'utilisateur ne verra pas comment les données sont passées d'une page à l'autre, ce sera totalement invisible pour lui.
La deuxième méthode s'appelle get. Cette méthode sert à passer des valeurs via l'url de la page. Imaginez par exemple que la page à appeler se nomme pageX.php. Si le formulaire dispose d'un champ nommé login, que l'utilisateur rentre Zick comme valeur et qu'il envoie le formulaire, la page sera appelée avec une adresse du type :
L'utilisateur verra donc dans la barre d'adresse le nom des champs ainsi que la valeur qu'il a rentré dans ceux-ci. Ce n'est pas réellement grave mais cela est un peu inutile quand on sait qu'on peut utiliser la méthode post qui ne laisse rien transparaître des mécanismes d'arrière-plan.
C'est l'attribut method qui permet de définir quelle méthode sera utilisée. Cet attribut peut prendre deux valeurs : post et get. Voici par exemple comment appeler la même page que précédemment avec la méthode post :
Voyons maintenant comment préciser le type MIME des données à envoyer.
enctype
Généralement, un formulaire doit transmettre à la page appelée des données au format texte. Effectivement, un pseudo, une adresse e-mail,... sont transmit au format texte, mais parfois, ce format ne convient pas. Effectivement, il est, par exemple, impossible de transmettre un fichier en format texte. Pourtant, dans les formulaires d'upload, il existe un champ permettant d'aller chercher un fichier sur le PC de l'utilisateur et de l'uploader sur le serveur. Dans ce cas précis, nous devrons préciser un enctype spécial pour que le fichier puisse être transmit à la page définie dans le paramètre action. Quand les données à transmettre ne sont qu'en format texte, il n'est pas nécessaire de préciser cet attribut. Voyons, par exemple, comment définir un enctype pour des fichiers :
Ainsi, si le formulaire dispose d'un champ d'upload de fichier, ceux-ci seront bien transmit à la page appelée.
target
Un paramètre interessant est le paramètre target qui permet de définir l'endroit où la page appelée sera chargée. Par défaut, la page est chargée à la place de la page contenant le formulaire, mais vous pouvez, par exemple, définir un autre endroit. Voici les différentes valeurs que peut prendre cet attribut.
_blank : ouvre le lien dans une nouvelle fenêtre.
_top : ouvre le lien dans la fenêtre principale du navigateur.
_self : ouvre le lien dans la fenêtre courante.
_parent : ouvre le lien dans la page parent.
Voici donc comment ouvrir la page de traitement d'un formulaire dans une nouvelle fenêtre :
Une fois le bouton d'envoi cliqué, la page de traitement sera chargée dans une nouvelle fenêtre du navigateur.

0 commentaires
Ajouter un commentaire