Очень часто на сайте приходится публиковать свой e-mail адрес. Однако, после этого автоматические сборщики e-mail адресов для будущих спам-баз гарантированно Ваш e-mail так же прихватят. Чтобы им это не удалось, люди стали пытаться сделать так, чтобы пользователи сайта видели e-mail , а роботы нет. Самый простой при...
Очень часто на сайте приходится публиковать свой e-mail адрес. Однако, после этого автоматические сборщики e-mail адресов для будущих спам-баз гарантированно Ваш e-mail так же прихватят. Чтобы им это не удалось, люди стали пытаться сделать так, чтобы пользователи сайта видели e-mail, а роботы нет. Самый простой пример - поставить кнопку "Показать e-mail" и после её нажатия подгружать его с сервера. Способ отличный, но придётся немного помучаться с реализацией. В этой же статье я покажу более простой способ защитить свой e-mail на сайте от спамеров.
Главный смысл вывести e-mail в виде ASCII-символов. Таким образом, сейчас задача написать PHP-функцию, которая преобразует строку в набор этих символов:
<?php
function protect($email) {
$result = "";
for ($i = 0; $i < strlen($email); $i++) $result .= "&#".ord(substr($email, $i, 1)).";";
return $result;
}
echo protect("a@bc.ru"); // В нужном месте преобразуем и выводим e-mail
?>
Запустите скрипт и посмотрите на результат. Вы на странице увидите "a@bc.ru", однако, если Вы откроете исходный код, то увидите следующее: "a@bc.ru". Именно это и увидят абсолютно все роботы. С подобным обычные сборщики e-mail адресов не справятся. А если начнут писать функции, которые будут преобразовывать ещё и все ASCII-символы обратно, то такой сборщик будет очень медленный. Отсюда вывод, что подобная защита e-mail на сайте от спамеров весьма эффективна.
