28-11-2010, 15:06
Witam. Na dole mam formularz kontaktowy i chciałbym zrobić zabezpieczenie spamowe, ale nie wiem jak. Proszę o pomoc
Kod PHP:
<?php
// sprawdzamy, czy zmienna $submit jest pusta
if (empty($_POST['submit'])) {
// wy_wietlamy formularz
echo "<table border=\"0\"><form method=\"post\">
<tr>
<td><span style=\"color: #000; font-size: 10pt; text-align: center;\">Treść wiadomości</td>
<td><textarea name=\"tresc\" style=\"width: 250px; height: 100px\"></textarea></td>
</tr>
<tr>
<td><span style=\"color: #000; font-size: 10pt; text-align: center;\">Imię, nazwisko</td>
<td><input type=\"text\" name=\"imie\" style=\"width: 250px\"></td>
</tr>
<tr>
<td><span style=\"color: #000; font-size: 10pt; text-align: center;\">Adres e-mail</td>
<td><input type=\"text\" name=\"email\" style=\"width: 250px\"></td>
</tr>
<tr>
<td> </td>
<td><input type=\"submit\" name=\"submit\" value=\"Wyślij\">
</tr>
</table>";
}
// sprawdzamy, czy zmienne przesłane z formularza nie są puste
elseif (!empty($_POST['tresc']) && !empty($_POST['imie']) && !empty($_POST['email'])) {
// jeżeli powyższy warunek jest spełniony tworzona jest wiadomo_ć
// zmienna $message zawiera tre_ć wiadomo_ci
$message = "Tre¶ć wiadomo¶ci:\n$_POST[tresc]\nWysłał: $_POST[imie]\ne-mail: $_POST[email]";
// zmienna $header zawiera przede wszystkim adres zwrotny
$header = "From: $_POST[imie] <$_POST[email]>";
// funkcja mail() za pomocą której wiadomo_ć zostanie wysłana
@mail("adres e-mail","Wiadomosc ze strony WWW ","$message","$header")
or die('Nie udało się wysłać wiadomości');
echo "<br><br><span style=\"color: #FF0000; text-align:center; font-size: 12pt;\"><strong>Wiadomość została wysłana poprawnie!</strong><br><br><br>";
echo "<br><br><Br><br><br><span style=\"color: #FF0000; text-align:center; font-size: 12pt;\"><strong>Dzięki za wysłanie wiadomośći</strong><br><br><br>";
}
else echo "<br><br><br><br><br><span style=\"color: #FF0000; text-align:center; font-size: 12pt;\">Wypełnij wszystkie pola formularza!</span><br><br><br><br><br><br><br>";
?>