Hébergement Free Tools... Designers Connexion... Kentico CMS ASP.NET...

PHP hide_email(), cachez vos adresses emails par myrmex 04 February 2010 a 8:21 am 1,169 fois et a 1 Commentaire

PHP hide_email() est une fonction PHP qui permet de protéger vos adresse E-mail que vous publiez sur votre site Internet. Cette protection est efficace contre les “bots” et les “spiders” qui tente de copier vos emails pour vous envoyer ensuite E-mail spam.
Pour fonctionner, cette fonction utilise un chiffrement de substitution avec une clé différente pour chaque chargement de vos pages web.

PHP hide_email() encrypte votre adresse E-mail et produit le javascript qui le décrypte. La plupart des “bots” et “spider” ne peuvent pas exécuter de javascript.
Si un internaute désactive l’execution de javascript, ce dernier sera notifié du message suivant ‘javascript protected email address’ à la place de l’adresse E-mail. Ce message est personnalisable !

Le code de la fonction tient en 9 lignes !

function hide_email($email) {
$character_set = '+-.0123456789@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz';
$key = str_shuffle($character_set); $cipher_text = ''; $id = 'e'.rand(1,999999999);
for ($i=0;$i<strlen($email);$i+=1) $cipher_text.= $key[strpos($character_set,$email[$i])];
$script = 'var a="'.$key.'";var b=a.split("").sort().join("");var c="'.$cipher_text.'";var d="";';
$script.= 'for(var e=0;e<c.length;e++)d+=b.charAt(a.indexOf(c.charAt(e)));';
$script.= 'document.getElementById("'.$id.'").innerHTML="<a href=\\"mailto:"+d+"\\">"+d+"</a>"';
$script = "eval(\"".str_replace(array("\\",'"'),array("\\\\",'\"'), $script)."\")";
$script = '<script type="text/javascript">/*<![CDATA[*/'.$script.'/*]]>*/</script>';
return '<span id="'.$id.'">[javascript protected email address]</span>'.$script; }

Et dans votre pgae PHP, il suffit d’ajouter :

<?php echo hide_email('test@test.com'); ?>

Site Internet : PHP hide_email()
Licence : Gratuit

Bookmark and Share
Ajouter un commentaire

1 commentaire : “ PHP hide_email(), cachez vos adresses emails ”

  1. 1
    requis :

    function hide_email_rot13($mail, $text) { return ‘document.write(“”.replace(/[a-zA-Z]/g, function(c){return String.fromCharCode((c=(c=c.charCodeAt(0)+13)?c:c-26);}));’.$text.’‘ }

    Une ligne ;-)

Ajouter un commentaire