拒绝垃圾邮件,隐藏email地址

如今的垃圾邮件是越来越猖狂了,稍不小心就会遭致无穷尽的骚扰。尽管有如同Gmail这样的强大的反垃圾邮件的服务商,仍有不少漏网之鱼(每天躺在我收件箱里的垃圾邮件会有几十封)。

我们需要避免直接在网页中留下email地址,例如 test@test.com。下面有一些简单且行之有效的方法隐藏email地址。

方法一:使用图片显示email地址

例如:

Google里搜索一下“email图片”类似的关键词,就可以找到有很多网站生成这样的图片

这里有一个:http://www.makepic.com/email.php

方法二:隐藏 @ 符号

  • 使用 @ 代替 @,(是@符号的html实体代码)显示出来的效果会是 test@test.com
  • 使用 at 或者其他任意字符 代替 @,例如 test at test.com、test(at)test.com

方法三:使用脚本语言(php或JavaScript)隐藏email地址

代码一:PHP

function convert_email_adr($email) {
    $pieces = str_split(trim($email));
    $new_mail = '';
    foreach ($pieces as $val) {
        $new_mail .= '&#'.ord($val).';';
    }
    return $new_mail;
}

在页面中调用此函数

<?php echo convert_email_adr('user@email.com'); ?>


输出结果

&#117;&#115;&#101;&#114;&#64;&#101;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;

代码二:JavaScript

<script type="text/javascript">
function create_mail(naam, domain, tld, label) {
    var mail;
    mail += '<a href="' + 'ma' + 'il' + 'to:' + naam;
    mail += '&#64;' + mail + domain '.' + tld;
    mail += '">' + label + '<' + '/a>';
    document.write(mail);
}
</script>


在页面中插入此代码调用

<script type="text/javascript">create_mail("user", "email", "com", "e-mail");</script>

代码三:

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"+d+""'; $script = "eval(\"".str_replace(array("\\",'"'),array("\\\\",'\"'), $script)."\")"; $script = '<script type="text/javascript"><!--mce:2--></script>'; return '<span id="'.$id.'">[javascript protected email address]</span>'.$script; }

在页面中调用此函数

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


输出结果

<span id="e5119581">[javascript protected email address]</span><script type="text/javascript">/*<![CDATA[*/eval("var a=\"XyScbvBUW38fhasxldY_TQotLE5nCJDkgMVIq@KeArO9i20G1pHu.R4N6PZm7j-+wFz\";var b=a.split(\"\").sort().join(\"\");var c=\"72m7a72m7S9NR\";var d=\"\";for(var e=0;e<c.length;e++)d+=b.charAt(a.indexOf(c.charAt(e)));document.getElementById(\"e5119581\").innerHTML=\"<a href=\\\"mailto:\"+d+\"\\\">\"+d+\"</a>\"")/*]]>*/</script>


显示效果

test@test.com

代码一、代码二原文点击这里
代码三原文点击这里

还有一些其他的方法,例如利用css翻转字符。大家可以自己搜搜看。

无觅相关文章插件,快速提升流量

This entry was posted in Programming and tagged , , . Bookmark the permalink.

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">