PDA

Просмотр полной версии : Защита e-mail


D0S
21.07.2008, 12:15
Есть у меня справочник со списком организаций рф.
У каждой организации есть своя анкета в которой есть
ее наименование, форма собственности, адрес сайта, e-mail адрес и т.д.

Вопрос как защитить e-mail адреса в анкетах.
Предложения типа переделать все адреса в info [собака] mail.ru отклоняются.
Возможно ли e-mail'ы конвертировать в png и не завалялся ли у кого такой скрипт на php?
п.с. гугл не помог.

biophreak
21.07.2008, 12:19
1. Либо постить его яваскриптом
2. Либо картинку формируй с мейлом, и вставляй ее, собсна :)

Имхо 2 наиболее рациональных выхода :)

D0S
21.07.2008, 12:25
1. Либо постить его яваскриптом
думаю что толку от яваскрипта мало, все равно мыла можно будет собрать парсером.
2. Либо картинку формируй с мейлом, и вставляй ее, собсна :)
этот вариант мне больше симпотизирует, но скрипта нормального не нашел, не редактировать же каждый маил вручную.

biophreak
21.07.2008, 12:37
Насчет яваскрипта - ченить типо
document.getElementById('mail_div').innerHTML += 'mail'
document.getElementById('mail_div').innerHTML += '@'
document.getElementById('mail_div').innerHTML += 'domain.tld'

А насчет картинки - в принципе модуль GD тебе в помощь )

Chaak
21.07.2008, 13:19
<?php
$filen = "anket.html";
$size = '11';


$save = fopen($filen,"a+t");
$f = fread($save,102400);
ftruncate($save,0);

preg_match_all("/[A-Za-z0-9\_\.\-]+@[A-Za-z0-9\_\.\-]+[.]{1}[a-zA-Z]{2,5}/",$f,$mails);

foreach($mails[0] as $line){
$href = '<img src="http://2ip.ru/spambot/spam_protect.php?preview=1&email='.$line.'&style[bgcolor]=FFFFFF&style[color]=000000&style[face]=Rockwell&style[size]='.$size.'">';
$f = str_replace($line,$href,$f);
}


fwrite($save,$f);
fclose($save);
?>

В файл anket.html - положишь анкеты. На него же выставишь права 777. Скрипт заменит все мыла на картинки с 2ip. Т.е было asdfg@mail.ru, стало <img src="http://2ip.ru/spambot/spam_protect.php?md5=TW1sd2MzQmhiWEJ5YjNSbFkzUmhjM lJtWjBCdFlXbHNMbkox&style[face]=Rockwell&style[size]=10&style[color]=000000&style[bgcolor]=FFFFFF">

Рекомендую запускать на локалхосте.


После всех этих действий можешь публиковать анкеты!

.:EnoT:.
21.07.2008, 13:20
Написал простейший скрипт, создающий картинку и накладывающий на неё текст (в данном случае емейл).
Цыет картинки, цвет текста, шрифт и смещения настроишь сам. Насчёт размера картинки думаю сам доработаешь, т.к. длинные мейлы могут просто не влезть в изображение, но можешь просто тупо сделать изображение больше или проверку на влезание сделай)) В общем откоментировал по максимуму, думаю разберёшься))


<?php
function img($mail){
$img = imagecreate(120,30); /*Создаём картинку*/
imagecolorallocate ($img, 0, 0, 0); /*Цвет картинки*/
$color = imagecolorallocate ($img, 0, 255, 255); /* установка цвета текста*/
imagestring($img,
4, /* id шрифта (0-5 - системные)*/
5, /* смещение по X (горизонтали) */
5, /* смещение по Y (вертикали)*/
$mail, $color);
header('Content-type: image/gif');
imagegif($img); /* выводим изображение в браузер */
}

echo img('mail@mail.ru');
?>