PHP: ochrona adresu e-mail przed SPAMem

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.

Leave a Comment

three × 1 =