Tuxbihan

Events Calendar

L M M J V S D
30 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 1 2 3

Latest Events

Pas d'événements

Projets

Refonte du site Web
18.04, 08 - 31.05, 08
Accueil arrow Technique arrow Masquer son adresse mail dans une page Web
Masquer son adresse mail dans une page Web Convertir en PDF Version imprimable Suggérer par mail
Écrit par Patrick Percot   
16-12-2004

Il est fréquemment nécessaire de mettre une adresse mail dans une page Web pour être contacté, mais le spam menace ...

Le problème n’est pas nouveau, les solutions sont nombreuses, en voici une de plus. Elle présente le gros inconvénient d’être en Javascript (merci de ne pas me taper dessus), mais elle présente l’avantage d’être facile à mettre en œuvre et de ne pas troubler le lecteur de la page Web qui aurait envie de vous envoyer un petit mot.

Deux fichiers HTML servent à calculer une fonction Javascript à incorporer dans votre code HTML. La fonction générée crée une adresse mail masquée, et c’est vous qui choisissez le nom de cette fonction. Vous pouvez ainsi en mettre plusieurs (une par adresse mail différente) dans une même page Web.

Le principe est que l’adresse mail est encodée sous forme de deux tableaux contenant les codes des caractères qui constituent l’adresse. Le premier tableau contient une valeur aléatoire comprise entre 0 et le code du caractère, et le second tableau contient la valeur complémentaire (code - tableau1). Le code généré contient le code nécessaire pour reconstituer l’adresse. Est-ce que ça préserve des spammeurs ? Oui, mais seulement tant qu’il n’incorporent pas d’interpréteur Javascript dans leurs robots.

Le premier fichier contient le formulaire (obfuscate-email.html).

Le second fichier calcule la fonction (obfuscate-email-calculate.html).

Un exemple de fonction générée :

 


<script type="text/javascript" language="javascript">
function patrick() {
 var m1 = [ 77, 54, 12, 87, 3, 16, 52 ];
 var m2 = [ 32, 43, 93, 21, 113, 95, 6 ];
 var a1 = [ 18, 107, 53, 103, 9, 34, 48, 38, 49, 22, 29, 77, 36, 84, 59 ];
 var a2 = [ 94, 5, 48, 11, 90, 77, 68, 26, 53, 92, 72, 24, 10, 18, 55 ];
 var strmail = new String;
 for (i = 0; i < m1.length; ++i) {
   strmail += String.fromCharCode(m1[i] + m2[i]);
 }
 var stradd = new String;
 for (i = 0; i < a1.length; ++i) {
   stradd += String.fromCharCode(a1[i] + a2[i]);
 }
 document.write("<a href=\"" + strmail + stradd + "\">" + stradd + "</a>");
}
</script>

 

Et un exemple d’utilisation :

 


   <address><script type="text/javascript" language="javascript">patrick();</script>
</address>

 

Deux mots sur Mozilla, bien pratique avec sa console Javascript (et aussi une console Java, le DOM Inspector), et un deboggeur Javascript ici

obfuscate-email.html
obfuscate-email.html
html
obfuscate-email-calculate.html
Commentaires
Ajouter un nouveau Rechercher
Ecrire un commentaire
Nom:
Email:
 
Titre:
BBCode:
[b] [i] [u] [url] [quote] [code] [img] 
 
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
Saisissez le code que vous voyez.

3.21 Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

 
< Précédent   Suivant >