PHP: ochrona adresu e-mail przed SPAMem

Autor: Arkadiusz Tobiasz 6 marca 2010

Zmorą osób programistów są spamerzy i większość czasu programisty poświęcana jest na zabezpieczenie adresów e-mail na stronach, skryptach przed robotami spamowymi. Pisałem już o wyświetlaniu adresu e-mail na stronie w postaci obrazka, a teraz chciałbym pokazać Ci prostą funkcję, która choć trochę zabezpieczy Cię przed spamerami.

W tym celu tworzymy sobie funkcję protect_email(), która zawiera następujący kod:

1
2
3
4
5
function protect_email($email)
{
    for ($i = 0; $i < strlen($email); $i++) { $output .= '&#'.ord($email[$i]).';'; }
    return $output;
}

Powyższa funkcja zamienia podany argument (zmienna $email), który jest adresem e-mail na odpowiedni ciąg znaków w kodzie ANSII. Pętla w powyższej funkcji przechodzi litera po literze, która jest zamieniana na swój odpowiednik w kodzie ANSII. Wynikiem jest zakodowany w kodzie ANSII adres e-mail. Na stronie wyświetlany jest poprawny adres e-mail, natomiast w podglądzie strony mamy kod ANSII. Oczywiście rozwiązanie nie będzie w 100% zabezpieczać Twojej strony przed spamem. Funkcji używamy bardzo prosto, a mianowicie:

1
echo protect_email('arek@tobiasz.org');

Standardowo demo możecie zobaczyć tutaj.

Popularity: 2%

Odpowiedz

 
Arkadiusz Tobiasz student Akademii Ekonomicznej im. Karola Adamieckiego w Katowicach na specjalnościach informatyka ekonomiczna oraz rachunkowość. Więcej...





Zend Framework: integracja z Uploadify

W tym wpisie postaram się przedstawić Wam w jaki sposób zintegrować skrypt Uploadify z Zend Frameworkiem. Dzięki temu będziemy mogli [...]

Linux: backup wszystkich baz danych MySQL

Swego czasu pisałem o tym jak z poziomu konsoli można szybko i przyjemnie zrobić backup bazy MySQL. Wszystko jest ładnie [...]

Zend Framework: gwiazdka przy wymaganych polach

W przypadku wymaganych pól w formularzach najczęściej oznacza się je poprzez dodanie gwiazdki. W tym wpisie chciałbym pokazać w jaki [...]

MySQL: GROUP_CONCAT

Ostatnio zostałem poproszony, aby na liście zamówień w sklepie PrestaShop wyświetlić listę produktów, które zostały sprzedane. Oczywiście można by było [...]