[ главная ]   [ рейтинг статей ]   [ справочник радиолюбителя ]   [ новости мира ИТ ]



Ответов: 0
25-02-12 07:01







   Web - программирование
PHP


ASP






XML



CSS

SSI





   Программирование под ОС











   Web - технологии








   Базы Данных









   Графика






Данные




Web - программирование / PHP /

No spam.php

Дмитрий Смирнов

...и снова о спаме. Кто о нем только не писал, и все писали, что это плохо и ай-яй-яй. Я не буду оригинальничать, и тоже скажу – это плохо. Это ай-яй-яй. Как бороться со спамерами со своей стороны, знает каждый – почтовые фильтры, всякие программы, отсылающие спамеру ответ, мол, адрес такой не найден и прочее... Базы данных спамеры составляют очень просто – натравливают специальные программы на различные сайты, в основном туда, где много email-адресов – форумы, гостевые, и прочее. Дальше – дело техники: программы просматривают html-код, ищут там mailto: и заносят почтовый адрес в свою базу. Бороться с этим можно самому, при публикации своего мыла – писать его, например, spectator[sobaka]mail.ru. Тот, кому надо, исправит адрес при написании письма сам.

Однако есть как минимум два способа, как при написании гостевых книг (или форумов) сделать защиту от спамеров. Первый – это не публиковать email вообще, а вместо его ставить ссылку на страницу с формой, с помощью которой желающий, не зная адреса, сможет отправить письмо соответствующему человеку. С одной стороны – удобно. Так сделано, например, на webscript.ru. С другой – не совсем, потому что многие предпочитают не пользоваться формами, а отправить письмо через любимый bat! Да и вообще, неизвестно еще куда отправит ваше письмо данная форма. Шучу, конечно, но недостатки этого метода, как и достоинства, очевидны.

«Но есть способ лучше!». Не абсолютно лучше, но в некоторых случаях явно лучше. Заключается он в том, чтобы публиковать ссылки на email адреса вот в таком виде: click here. Желающие могут кликнуть и посмотреть, что это работает. Программы, «выдирающие» адреса, ничего на найдут.

Кликнули? Работает?

А теперь – как. Первая часть скрипта, которая заменяет в тексте адреса на такие ссылки простая, даже нет смысла ее приводить. Если что – то у меня в отзывах стоит примерно следующее:

$nospam= str_replace ('@','[dog]',$mail);
echo ('<a href=http://spectator.ru/nospam.php3?'.$nospam.'>');

Вторая часть – это, собственно, скрипт nospam.php3. Состоит он ровно из двух строк:

<php
$url = str_replace ('[dog]','@',urldecode($QUERY_STRING));
header('Location: mailto:$url');
?>

Меняем [dog] на @ обратно и шлем в хедере mailto: и адрес.

При этом ничего в браузер не грузится и текущая страница остается нетронутой. (Правда, мне тут уже сообщили, что в IE 5.5 это не так...).

Вот, собственно, и все. Осложним жизнь спамерам. Вместо [dog] можно использовать все, что угодно, на что хватит вашего воображения.

З.Ы. : о баге в IE 5.5. Он при клике на эту ссылку открывает пустое окно. Почтовая программа, правда, тоже запускается, но все-таки... Пустое окно – нехорошо...

Давайте посмотрим... А теперь эта ссылка в IE 5.5 – работает? Click here.

Да?

Сделано – просто. Но все равно через... Вставляем куда-нибудь пустой iframe: <iframe src="" frameborder=0 vspace=0 hspace=0 width=1 height=1 scrolling=no name="mail"></iframe>

Ту часть, которая выводит ссылки, пишем примерно вот так:

$nospam= str_replace ('@','[dog]',$mail);
echo ('<a href=nospam.php3?'.$nospam);
if (eregi ("MSIE 5", $HTTP_USER_AGENT)) {echo (' target=mail'); }
echo ('>');

Для того, чтобы если у человека IE 5 и выше – ссылки шли в этот пустой iframe...

Вроде работает... Только вот такой простое решение превратилось в какую-то бяку...




Комментарии

 Ваш комментарий к данному материалу будет интересен нам и нашим читателям!



Последние статьи: Web - программирование / PHP /

GTK+: перспективы развития
02-03-2010   

Библиотека GTK+ прошла долгий путь развития и сейчас очень популярна. GNOME, одна из ведущих оконных сред, использует GTK+ почти исключительно, GIMP построен на GTK+, множество коммерческих разработчиков ПО, таких как Abobe, NVidia и VMware, решили использовать эту библиотеку в качестве графической основы для своих продуктов... подробнее

Кол. просмотров: общее - 4399 сегодня - 0

Новостной портал
13-11-2009   

Slashdot.org – популярный новостной портал с посещаемостью 50 млн. человек в месяц. Авторы проекта добились такого успеха, предоставляя пользователям свежие и интересные новости из мира IT... подробнее

Кол. просмотров: общее - 4296 сегодня - 1

Параллельное выполнение скриптов может нарушить целостность информации в файлах
13-11-2009   

Здесь рассматривается вопрос, что бывает, если запустить некий скрипт почти одновременно (что происходит, например, при большой нагруженности сервера) несколько раз, т.е. запустить несколько копий одного и того же скрипта. И к чему это может привести... подробнее

Кол. просмотров: общее - 4110 сегодня - 0

No spam.php
10-11-2009   

...и снова о спаме. Кто о нем только не писал, и все писали, что это плохо и ай-яй-яй. Я не буду оригинальничать, и тоже скажу – это плохо. Это ай-яй-яй. Как бороться со спамерами со своей стороны... подробнее

Кол. просмотров: общее - 4157 сегодня - 1

Начинаем работу с рисунками в php для Windows
10-11-2009   

Эта статья даст вам общее представление о том, как создавать, обрабатывать и выводить рисунки в PHP4 для Windows... подробнее

Кол. просмотров: общее - 4142 сегодня - 0



  WWW.COMPROG.RU - 2009-2012 | Designed and Powered by Zaipov Renat | Projects