Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/02/2013, 10:50
harvey
 
Fecha de Ingreso: mayo-2007
Mensajes: 256
Antigüedad: 17 años
Puntos: 3
Proteccion de email frente a robots de spam

He estado mirando los post que hay sobre el tema y hay algunas dudas que tengo sobre el tema de como los robots spam cogen las direcciones de correo. En un post antiguo he econtrado este código:

Código PHP:
<?php
function codificador_hexa ($email_address) {
$codificado bin2hex($email_address);
$codificado chunk_split($codificado2'%');
$codificado '%' substr($codificado0strlen($codificado) - 1);
return 
$codificado;
}
$em ="[email protected]";
$email codificador_hexa($em);
echo 
'<a href="mailto:'.$email.'">Contactar</a>';
?>
http://www.forosdelweb.com/f18/emails-anti-spam-578100/


Funcionar funciona pero tengo varias dudas:

Código PHP:
substr($codificado0strlen($codificado) - 1); 
¿No daría la cadena completa? ¿No sería lo mismo que usar directamente $codificado? ¿Esa linea de código solo es para ponerle delante el "%"?

Por otro lado, como digo, el código funciona pero no sé porque funciona, porqué el navegador interpreta un mailto: seguido de una cadena códificada como una dirección. Por lo mismo ¿Si el navegador puede interpretar esa cadena códificada como sabemos que los robots no?

Tambien encontré un código que es para convertir la direccion mail que se presenta en pantalla en una imagen
http://www.forosdelweb.com/wiki/PHP:...is_usuarios%3F
Pero no me funciona y por lo que he leido es por la librería gd2, a cual no conozco pero como no sé si voy a disponer de ella preferiría alguna forma alternativa de presentar la dirección en pantalla sin que la puedan capturar los robots.

En fin, que quisiera encontrar la manera de proteger mails en ambos casos: tanto si pongo la dirección tal cual en pantalla como si solo pongo un enlace. Añadir que no quiero usar javascript, solo php.