Email като картинка (против ботове)
15-06-2010
Преди време един потребител тук в сайта поразпита как може да показва емайлите на потребителите си като картинки, за да не могат да бъдат добавяни точно в тези списъци, за това му предложих следният код.

email.php

<?php
$email = base64_decode($_GET['email']); //Вземаме емайла кодиран под Base64 и го декодираме, за да се изпише правилно в изображението.
$width = 250; //Широчина на изображението.
$height = 20; //Височина на изображението.
$image = imagecreate($width,$height);
$background = imagecolorallocate($image,255,255,255); //Фоновият цвят на картинката в случая е бял.
$text = imagecolorallocate($image,0,0,0); //Цветът на текста в случая черен.
imagestring($image,10,10,1, $email, $text);

header('Content-type: image/png'); //Декларираме типа на изображението в случая .png.

imagepng($image);
imagedestroy($image);
?>


А в страницата, в която ще бъде показан емайла трябва да сложил следните редове.


<?php
$email = base64_encode("t0m3kk@web-tourist.net"); //Вие сами ще си го настроите да го изкарва от запис в база данни или масив.

echo "<img src=\"email.php?email=$email\">";
?>


В страницата, в която ще извеждате емайла като картинка емайла ви ще изглежда така:
<img src="email.php?email=dDBtM2trQHdlYi10b3VyaXN0Lm5ldA==">



Дано да съм ви бил полезен с това уроче :)





/ Трябва да сте регистриран за да напишете коментар /
От: stoqnski
22:51 16-06-2010
А в базата данни как излиза ?
От: t0m3kk
22:57 16-06-2010
В база данни се записва по напълно нормален начин :) Просто трябва да си настроиш кода, за да взима правилният емайл...

Примерно:
$email = $row['email'];
$email = base64_encode("$email");

И всичко си работи както трябва :)
От: ExpressYourself
14:41 18-06-2010
Не е станало кой знае какво по този урок..
Най обикновена каринка с текст :]
Иначе е добра идея като за начинаещите теи като на по-големите сайтове има функция за скриване на емайл на потребителите :]
От: t0m3kk
20:04 18-06-2010
@ExpressYourself - всеки може да го скрие, но не там е въпроса :)
От: kalybg
14:18 26-06-2010
Много добре ....
Аз обаче от 2 години ползвам това: http://bulgarian.spampoison.com/ и не ми се налага повече да мисля върху този проблем.
1