Formulaire de contact sans PHP
Comprise par tous les navigateurs, mailto ouvre le client de messagerie par défaut. Ce n'est pas une fonction Javascript à proprement parler, il s'agit d'un attribut de lien qui s'utilise le plus souvent dans une page HTML sous la forme:<a href="mailto:user@domain.com?subject= sujet">Envoyer un email</a>
La syntaxe pour ajouter l'adresse du destinataire, le titre et le message:
mailto:adresse du destinataire?subject=titre du message&body=message
Formulaire HTML d'envoi d'un email

Code HTML du formulaire
Afin d'afficher un formulaire comprenant une adresse email, le sujet et le contenu du message, on peut utiliser le code HTML suivant:
<form method="" action="javascript:sendMail()">
<table border="0" cellspacing="1" width="400">
<tr>
<td width="98">Destinataire</td>
<td width="295">
<input type="text" id="edTo" size="39"></td>
</tr>
<tr>
<td width="98">Sujet</td>
<td width="295">
<input type="text" id="edSubject" size="39"></td>
</tr>
<tr>
<td width="98">Message</td>
<td width="295">
<textarea rows="3" id="edBody" cols="33"></textarea></td>
</tr>
</table>
<br>
<input type="submit" value="Envoyer" >
</form>
Fonctions javascript d'envoi du message
Au lieu d'appeler directement la fonction mailto dans le post du formulaire, la fonction send Mail() effectue les opérations suivantes:- tester les données saisies par l'internaute dans le formulaire,
- encoder les textes pour respecter le format des URL,
- rediriger l'internaute vers le logiciel de messagerie.
Note : La fonction sendMail() est à coller au dessus du code HTML du formulaire
<script language="Javascript" type="text/javascript">
function sendMail() {
<!--Tester les donnees-->
if (document.getElementById("edTo").value.length==0) {
alert("Saisir l'adresse du destinataire !!!");
return;
}
if (document.getElementById("edSubject").value.length==0) {
alert("Saisir le titre !!!");
return;
}
if (document.getElementById("edBody").value.length==0) {
alert("Ecrire le message !!!");
return;
}
<!--Encoder l'url mailto-->
var url="mailto:"+encodeURIComponent(document.getElementById("edTo").value)
+"?subject="+encodeURIComponent(document.getElementById("edSubject").value)
+"&body="+encodeURIComponent(document.getElementById("edBody").value);
<!--Ouvrir client messagerie-->
document.location=url;
}
</script>
A priori, cette solution ,'est pas la plus élégente pour permettre à l'internaute d'envoyer un message au webmaster du site internet. La principale force dans l'envoi d'un email sans PHP est qu'elle est très simple à mettre en place et que le message est envoyé à partir du logiciel de messagerie par défaut.