Cómo ocultar el email para evitar el SPAM

Email this to someoneShare on FacebookShare on Google+Share on LinkedInTweet about this on Twitter

En otro artículo ya vímos una forma sencilla de ocultar el email mediante Javascript. Por desgracia para nosotros el tema del SPAM sigue aumentando y son pocas las opciones que encontramos para poder evitarlo sin necesidad de adquirir costosas soluciones.

En esta ocasión nos planteamos la situación en la que tenemos que dejar nuestro email de contacto, ya sea en un foro, un blog o cualquier página web. Si lo escribimos como haríamos habitualmente el risgo de que los robots capturen nuestro correo electónico para enviarnos SPAM o correos basura es muy alto. Para ello basta con dedicarle unos minutos antes de insertar nuestro email, ya que tenemos varias formas de ocultar el email para evitar el SPAM:

Utilizando CSS:

Con esta técnica escribimos la dirección de email al revés y luego con estilos mostramos la dirección correcta utilizando la propiedad direction:

<span style=”direction:rtl; unicode-bidi:bidi-override;”>se.oinimod@ofni</span>

La siguiente función se encarga de utilizar este método para mostrar los emails en nuestra web:

function hideEmail($mail) {
$mail = strrev($mail);
return “<span style=”direction:rtl; unicode-bidi:bidi-override;”>”.$mail.”</span>”;
}

Utilizando codificación ROT13

El siguiente método consiste en codificar la dirección email con el algoritmo ROT13 que consiste en trasladar 13 posiciones las letras del alfabeto, dejando los caracteres no-alfabéticos sin modificar. Para ello escribimos el email codificado y lo mostramos correctamente con la función Javascript str_rot13.

<script type=”text/javascript”>
document.write((“pbagnpgb@qbzvavb.pbz”).replace(/[a-z]/gi, function(s){
return String.fromCharCode(s.charCodeAt(0)+(s.toLowerCase()<‘n’?13:-13));
}));
</script>

Después escribimos una función en PHP que se encargue de codificar la dirección email y que imprima el código javascript para decodificarlo:

function hideEmail($mail) {
$temp = “<script type=”text/javascript”>n”;
$temp.= “document.write((“”.str_rot13($mail).””).replace(/[a-z]/gi, function(s){ n”;
$temp.= ”   return String.fromCharCode(s.charCodeAt(0)+(s.toLowerCase()<‘n’?13:-13));n”;
$temp.= “}));n”;
$temp.= “</script>”;
return $temp;
}

Sé la primera persona en comentar

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

De conformidad con lo establecido en la LOPD, Adpv Advertising Provider S.L. garantiza la adopción de las medidas necesarias para asegurar el tratamiento confidencial de los datos de carácter personal. Así mismo le informamos de la inclusión de sus datos en un fichero con la finalidad de mantener su relación negocial o contractual con Adpv Advertising Provider S.L. y de la posibilidad de ejercer los derechos de acceso, rectificación, cancelación y oposición en la siguiente dirección: Ercilla, 26, 1Dcha., 48011, Bilbao, Bizkaia. Privacidad.