メールアドレスを堂々と表示してみる。
篠原 隆司
メアド収集ロボット対策とかって、メアドを画像にしたり、フォームだけでメアドの掲載をしていないサイトってあると思います。
これってどうなん?
デファスタになっちゃってるからいいの?
やっぱ送り手としては、送り先のメアドを知っておきたいものです。
ってことで、webサイトにメアドを堂々と表示しちゃいましょう。
とりあえず、下記のコメント箇所、sampleとexample.comの箇所を書き換えてください。
この例では、sample@example.com になります。
// リンク生成javascript $buf =<<<EOT <span class="c_mail_address"></span> <script type="text/javascript"> (function(){ var a = ['sa','m','p','le'] // sample , b = ['ex','ampl','e.c','om'] // example.com , c = ['ma', 'il', 'to', ':'] , h = m = ''; for (var i in c) h += c[i]; for (var i in a) m += a[i]; m += '★'; for (var i in b) m += b[i]; m = m.replace('★', '@'); jQuery('span.c_mail_address') .html('') .append( jQuery(document.createElement('a')) .attr('href', h+m).html(m) ); })(); </script> EOT; // 定数にセット define('C_MAIL_ADDRESS', $buf); ?>
これで定数 C_MAIL_ADDRESS を echo すればOK!
<html> <body> <h1>お問い合わせ</h1> <p> メールはこちらへ → <?php echo C_MAIL_ADDRESS;?> </p> </body> </html>
まぁこれでも復元ルーチンは簡単すぎるね。
実際の運用では、配列の復元をもっと複雑にしてもいいと思う。
あと、注意点ですが・・・
もし仮に私が、メアド収集ロボットを作るとしたら、
こんな小手先の対策なんて無意味です。
こんなことしていたって、sample@example.ocmを認識するロボット作れちゃいます。
そんな難しいことでもないしね。
ってことで、素直にフォームにしたほうがいいのかもしれないね。
まぁなんていうか、こういう書き方もできるよってお話でした。