- Mensajes
- 2,408
- Puntuación de reacción
- 1
Los enlaces mailto se utilizan para enlazar a un correo electronico en lugar de una pagina web. El problema es que para un robot que se dedique a recopilar estos datos leyendo el codigo de las paginas es muy facil obtener las direcciones. Convirtiendo a ASCII buena parte del correo podemos evitar esto sin que el usuario real note cambio alguno.
string email( string $mail [, string $nombre]);
Los parametros de la funcion serian $mail y $nombre, el primero y obligatorio para el correo electronico a mostrar y $nombre para el anchor text del enlace.
Algunos ejemplos, previa declaracion de la funcion :
Si observais el codigo fuente vereis...
Espero que os sirva de algo. :mola:
EDITO:
Aunque así funciona perfecto, el foro no deja incrustar codigo correctamente y me está interpretando algunos codigos ASCII. xD
Os dejo aqui el pastebin de la funcion con el codigo correcto : http://pastebin.com/DhC1qZeR
PHP:
<?php
function email($mail,$nombre=null){
if (empty($mail)) return null;
$mailascii = '';
for($x=0,$y=strlen($mail);$x<$y;$x++){
if($x%2 OR $mail{$x}=='@'){
$mailascii .= '&#'.ord($mail{$x}).';';
}else{
$mailascii .= $mail{$x};
}
}
return '<a href="mailto:'.$mailascii.'">'.(isset($nombre)?$nombre:$mailascii).'</a>';
}
?>
string email( string $mail [, string $nombre]);
Los parametros de la funcion serian $mail y $nombre, el primero y obligatorio para el correo electronico a mostrar y $nombre para el anchor text del enlace.
Algunos ejemplos, previa declaracion de la funcion :
PHP:
<?php
echo email("no_mas_spam@foro20.com"); //Sin anchor text muestra por efecto la direccion de email
echo "<br/><br/>";
echo email("no_mas_spam@foro20.com","NO SPAM"); //Si se especifica $nombre se muestra este como anchor text
?>
Si observais el codigo fuente vereis...
<a href="mailto:no
Espero que os sirva de algo. :mola:
EDITO:
Aunque así funciona perfecto, el foro no deja incrustar codigo correctamente y me está interpretando algunos codigos ASCII. xD
Os dejo aqui el pastebin de la funcion con el codigo correcto : http://pastebin.com/DhC1qZeR
Última edición: