Hi ich hatte vor in meine Gästebuch ein Antispamschutz einzubauen, nur allerdings funzt es nicht so richtig. D.h. man kann immernoch spammen
Wäre für Hilfe sehr dankbar
PHP-Code:
$abstand =30;
if ($action == "insert")
{
$ip = getenv('REMOTE_ADDR');
$conn = mysql_connect($dbserver,$dbuser,$dbpass);
mysql_select_db($dbname,$conn);
$query2 = "SELECT * FROM $dbtable WHERE ip = '$ip' ORDER BY id DESC LIMIT 0,1";
$result2 = mysql_query($query2,$conn);
$zeileholen2 = mysql_fetch_array($result2,MYSQL_ASSOC);
$gettime = $zeileholen2["datum"];
if ($name == "") { die("Dein Name fehlt.<br>Klicke bitte auf den Zurück-Button deines Browsers<br>und trag im Feld \"Name\" deinen Namen ein"); }
if ($beitrag == "") { die("Dein Beitrag fehlt.<br>Klicke bitte auf den Zurück-Button deines Browsers<br>und trag im Feld \"Beitrag\" deinen Beitrag ein"); }
if ($gettime[time]+$abstand>=time()) { echo"Du hast schon ein Eintrag gepostet"; }
else {
$conn = mysql_connect($dbserver,$dbuser,$dbpass);
mysql_select_db($dbname,$conn);
$datum = time();
$query = "INSERT INTO $dbtable VALUES ('', '".addslashes($name)."', '".addslashes($email)."', '".addslashes($homepage)."', '".addslashes($beitrag)."' ,'".$datum."' , '".addslashes($icq)."', '".$ip."')";
$result = mysql_query($query,$conn);
if (!$result) { die ("Sorry, Datenbankeintrag hat nicht funktioniert"); }
mysql_close($conn);
echo"<br>".
"Eintrag erfolgreich".
"<br><br>".
"Du wirst in 3 Sekunden weitergeleitet.<br><br>Solltest du nicht weitergeleitet werden dann klicke bitte <a href=\"?area=guestbook\">hier</a>".
"<meta http-equiv=\"refresh\" content=\"3; URL=?area=guestbook\">";
}
}
Kommentar