|
mailto.cgi & FORMULAIRES
|
|
Utilisation de mailto.cgi pour l'envoi de formulaires par courriel ...
o Trois (3) niveaux d'explications :
A. Utilisation des fonctions de base
Un formulaire HTML est habituellement utilisé afin de permettre aux utilisateurs de fournir des renseignements qui seront ensuite envoyés par la fonction "POST" du protocole "HTTP". Le script CGI "mailto.cgi" vous permet de traiter les données du formulaire pour ensuite envoyer ces informations par courrier électronique. Il permet aussi de vérifier et de restreindre l'utilisation des divers éléments de formulaire et la possibilité d'envoyer une confirmation à l'envoyeur.
Afin d'être en mesure d'utiliser ce script CGI, vous devrez en premier lieu créer une page HTML contenant le code source de base fourni ci-dessous. Ces codes sont les balises habituelles pour l'utilisation des formulaires en HTML, cependant, le nom (name="...") des éléments est sensible à la casse et doit être spécifique au format requis par "mailto.cgi"; le script que nous utiliserons pour traiter le contenu des éléments de formulaire.
L'adresse Web pour accéder au script CGI "mailto.cgi" : http://www.cbti.net/cgi-bin/mailto.cgi
L'adresse Web pour accéder au script CGI "mailto.cgi" à partir d'un formulaire hébergé sur un site Web sécurisé (HTTPS/SSL/TLS) : https://secure.cybertechmedia.ca/cgi-bin/mailto.cgi
Voici un exemple du code HTML de base nécessaire :
<form action="http://www.cbti.net/cgi-bin/mailto.cgi" method="post">
Les codes suivants sont de types "hidden", donc invisibles, puisque ces informations ne doivent pas être visibles par l'utilisateur et sont nécessaires au script CGI.
<input type="hidden" name="RECIPIENT" value="votre@adresse.courriel">
<input type="hidden" name="SUBJECT" value="Sujet du courriel">
<input type="hidden" name="FROMADDRESS" value="L'adresse courriel de l'envoyeur">
Les 6 fonctions suivantes sont optionnelles :
<input type="hidden" name="THANKURL" value="http://adresse.de/retour">
<input type="hidden" name="ERRORURL" value="http://adresse.vers/page.erreurs">
<input type="hidden" name="SEPARATOR" value=" : ">
<input type="hidden" name="ALPHA_SORT">
<input type="hidden" name="SUPPRESS_EMPTY">
<input type="hidden" name="BROWSER_INFO">
Voici maintenant les explications de ce code en détail :
<form action="http://www.cbti.net/cgi-bin/mailto.cgi" method="post">
Ce code indique la création d'un formulaire et l'utilisation du script CGI comme interpréteur des données pour ce formulaire.
<input type="hidden" name="RECIPIENT" value="votre@adresse.courriel">
L'adresse de courrier électronique où vous désirez recevoir les messages contenant les données de formulaire.
<input type="hidden" name="SUBJECT" value="Sujet du courriel">
Le sujet du message contenant les renseignements du formulaire.
<input type="hidden" name="FROMADDRESS" value="L'adresse courriel de l'envoyeur">
Cette option peut exécuter deux fonctions :
1. Vous pouvez tout simplement inscrire votre adresse de courrier électronique; les messages qui vous seront envoyés auront cette adresse dans le champ de l'expéditeur (FROM).
2. Vous pouvez aussi décider de questionner l'utilisateur dans votre formulaire à propos de son adresse de courrier électronique. C'est donc celle-ci qui se retrouvera dans le champ de l'expéditeur (FROM) du message reçu. Voici la procédure pour utiliser cette fonction :
<input type="hidden" name="FROMADDRESS" value="$courriel">
<input type="text" name="courriel" value="@">
La raison du "$" avant le mot "courriel" dans l'option "FROMADDRESS" est de faire une référence vers le contenu d'un champ de texte (Dans cet exemple : type="text" name="courriel") dans votre formulaire pour finalement remplacer l'adresse de courrier électronique de l'expéditeur (FROM) par l'information qui sera inscrite dans ce champ.
<input type="hidden" name="THANKURL" value="http://adresse.vers/page.de/retour">
OPTIONNEL : L'adresse Web où l'utilisateur sera redirigé après avoir rempli et envoyé le formulaire. Si vous n'utilisez pas cette fonction, l'utilisateur recevra une page (en anglais seulement) indiquant que le formulaire a été envoyé avec succès.
<input type="hidden" name="ERRORURL" value="http://adresse.vers/page.erreurs">
OPTIONNEL : L'adresse Web où l'utilisateur sera redirigé s'il y a une ou des erreurs après avoir envoyé le formulaire. Si vous n'utilisez pas cette fonction, l'utilisateur recevra une page (en anglais seulement) indiquant la liste des erreurs dans le formulaire.
<input type="hidden" name="SEPARATOR" value=" : ">
OPTIONNEL : Permet de spécifier le ou les caractères utilisés comme séparateur entre le nom des éléments et leur contenu dans le courriel qui est envoyé. Si vous n'utilisez pas cette fonction, le séparateur "=" sera utilisé.
<input type="hidden" name="ALPHA_SORT">
OPTIONNEL : Permet de trier par ordre alphabétique les éléments de formulaire dans le courriel qui est envoyé. Si vous n'utilisez pas cette fonction, les éléments seront triés selon leur ordre d'apparition dans le formulaire.
<input type="hidden" name="SUPPRESS_EMPTY">
OPTIONNEL : Permet de retirer les éléments de formulaire vides (sans contenu) dans le courriel qui est envoyé. Si vous n'utilisez pas cette fonction, tous les éléments (vides ou non) dans le formulaire seront inclus dans le courriel.
<input type="hidden" name="BROWSER_INFO">
OPTIONNEL : Cette fonction ajoutera automatiquement un en-tête dans le courriel contenant divers renseignements sur le navigateur de l'utilisateur qui a envoyé le formulaire. Par exemple, le type de navigateur, la langue, etc.
B. Validations et restrictions des éléments du formulaire
Le script "mailto.cgi" peut effectuer une validation des données du formulaire et ainsi appliquer les restrictions qui s'imposent selon les options que vous aurez définies dans votre formulaire. Par exemple, si vous désirez rendre obligatoire la réponse à un élément du formulaire, il y a une fonction permettant d'appliquer cette restriction.
Voici les fonctions de validation et de restriction disponibles :
<input type="hidden" name="CHECK:EMAIL:nom_du_champ">
<input type="hidden" name="CHECK:PHONE:nom_du_champ">
<input type="hidden" name="CHECK:SELECT:nom_du_champ" value="element_du_menu">
<input type="hidden" name="CHECK:NONUM:nom_du_champ">
<input type="hidden" name="CHECK:NOLETTER:nom_du_champ">
<input type="hidden" name="CHECK:NUMONLY:nom_du_champ">
<input type="hidden" name="CHECK:LETTERONLY:nom_du_champ">
<input type="hidden" name="CHECK:NOTBLANK:nom_du_champ">
Voici un exemple de l'utilisation d'une fonction de validation :
<input type="text" name="courriel" value="@">
<type="hidden" name="CHECK:EMAIL:courriel">
Dans cet exemple, nous utilisons un champ de texte standard nommé "courriel" et la fonction "CHECK:EMAIL" afin de vérifier que le champ de texte contiendra absolument une adresse de courrier électronique valide. La fonction doit toujours être inscrite à la suite de l'élément devant être vérifié.
L'application des fonctions de validation se fait avec la syntaxe suivante :
<input type="hidden" name="CHECK:fonction:nom_du_champ" value="element_du_menu">
CHECK:fonction : Applique la fonction de validation "fonction".
nom_du_champ : Remplacez "nom_du_champ" par le nom de l'élément de formulaire à vérifier
element_du_menu : Seule la fonction "SELECT" utilise cette valeur. Remplacez "element_du_menu" par le nom de l'élément du menu qui ne doit pas être sélectionné.
Voici une brève description des types de fonctions de validation disponibles :
EMAIL : Vérifie que le champ de texte contient une adresse de courrier électronique valide.
PHONE : Vérifie que le champ de texte contient un numéro de téléphone valide.
SELECT : Cette fonction s'applique aux menus de formulaire, et vérifie que l'élément "element_du_menu" n'est pas sélectionné lors de l'envoi du formulaire. Par exemple, si votre menu contient l'élément "< CHOISIR >", vous pouvez vous assurer que personne ne sélectionnera cet élément qui est indicatif et non valide comme choix.
NONUM : Vérifie que le champ de texte ne contient pas de chiffres.
NOLETTER : Vérifie que le champ de texte ne contient pas de lettre.
NUMONLY : Vérifie que le champ de texte ne contient seulement que des chiffres.
LETTERONLY : Vérifie que le champ de texte ne contient seulement que des lettres.
NOTBLANK : Vérifie que le champ de texte n'est pas vide.
Finalement, lors de la soumission du formulaire, si l'utilisateur qui a rempli le formulaire n'a pas répondu correctement aux restrictions que vous aurez établies, il se verra présenter une page contenant un message d'erreur qui expliquera les problèmes survenus. Si vous avez spécifié votre propre page d'erreur, il sera redirigé vers celle-ci.
C. Confirmation de réception
Le script "mailto.cgi" peut aussi envoyer un message de confirmation par courriel à l'adresse de l'utilisateur, contenant les informations que vous aurez définies (sujet, message, etc.). Cette procédure est habituellement utilisée afin de confirmer à l'utilisateur ayant rempli le formulaire que vous avez bien reçu ses informations (confirmation de réception).
Voici un exemple du code HTML nécessaire :
<input type="hidden" name="CONFIRM_RECIPIENT" value="$courriel">
<input type="hidden" name="CONFIRM_SUBJECT" value="Sujet du courriel">
<input type="hidden" name="CONFIRM_FROMADDRESS" value="votre@adresse.courriel">
<input type="hidden" name="CONFIRM_MESSAGE" value="Votre message de confirmation ici">
Voici maintenant les explications de ce code en détail :
<input type="hidden" name="CONFIRM_RECIPIENT" value="$courriel">
Afin que la fonction de confirmation soit vraiment utile, vous devez connaître l'adresse de courrier électronique de l'utilisateur ayant rempli le formulaire. Il est donc nécessaire d'en faire la demande dans votre formulaire et d'utiliser le champ contenant l'adresse courriel comme valeur pour cette option (dans cet exemple : $courriel). Ainsi, le message pourra être envoyé à l'adresse courriel correspondante. Dans le cas contraire, il sera impossible d'utiliser cette fonction, ne connaissant pas l'adresse où confirmer la réception.
<input type="hidden" name="CONFIRM_SUBJECT" value="Sujet du courriel">
Le sujet du message de confirmation envoyé par courriel à l'utilisateur.
<input type="hidden" name="CONFIRM_FROMADDRESS" value="votre@adresse.courriel">
L'adresse de courrier électronique de l'expéditeur du courriel de confirmation, donc la vôtre.
<input type="hidden" name="CONFIRM_MESSAGE" value="Votre message de confirmation ici">
Le message de confirmation envoyé par courriel à l'utilisateur. Vous pouvez utiliser plusieurs lignes afin de générer un message assez explicatif. Vous pouvez aussi utiliser le contenu de vos champs de formulaire sous forme de variable dans le message de confirmation. Par exemple, si vous avez un champ avec le nom "Forfait" (name="Forfait"), vous pouvez inscrire le code $Forfait dans le texte afin que la variable soit remplacée par la valeur du champ de formulaire.
Terminez votre formulaire avec le code HTML suivant :
<input type="submit" value="Envoyer">
</form>
Ceci complète les explications et les fonctions disponibles avec le script CGI "mailto.cgi".
Pour des renseignements ou questions, communiquez avec nous à l'adresse tech@cybertechmedia.ca.
|
|