Es geht um ein Registrierungsscript, welches Daten in eine Datenbank überträgt.
Irgend ein Spamroboter trägt täglich 10 Einträge ( sinnlos) ein.
Hält sich zwar in Grenzen, kommt aber mit der Zeit auch was zusammen.
Dann heißt es lästiges löschen.
Gibt es irgendwie eine Möglichkeit durch ein php Befehl dieses zu verhindern ohne den Script großartig zu ändern ?
Danke.
Das Formular sieht so aus : (steht in der Datenbank)
PHP
<?php
<form method="POST" action="newreg.php" style="margin-top: 0; margin-bottom: 0" name="reg">
<div align="center">
<center>
<table border="0" cellpadding="0" cellspacing="0" width="550">
<tr>
<td width="188">Anrede:</td>
<td width="358"><select size="1" name="anrede">
<option value="Frau">Frau</option>
<option value="Herr">Herr</option>
<option value="Firma">Firma</option>
</select></td>
</tr>
<tr>
<td width="188">[b]Vorname / Nachname:[/b]</td>
<td width="358"><input type="text" name="vorname" size="20"><input type="text" name="nachname" size="20"></td>
</tr>
<tr>
<td width="188">Strasse / Hausnummer:</td>
<td width="358"><input type="text" name="strasse" size="44"></td>
</tr>
<tr>
<td width="188">PLZ / Ort:</td>
<td width="358"><input type="text" name="plz" size="5"><input type="text" name="ort" size="35"></td>
</tr>
<tr>
<td width="188">[b]Land:[/b]</td>
<td width="358"><input type="text" name="land" size="20" value="Deutschland"></td>
</tr>
<tr>
<td width="188">[b]E-Mail-Adresse:[/b]</td>
<td width="358"><input type="text" name="email" size="44"></td>
</tr>
<tr>
<td width="548" colspan="2">
<hr>
</td>
</tr>
<tr>
<td width="188">[b]Gewünschter Username:[/b]</td>
<td width="358"><input type="text" name="user" size="20"></td>
</tr>
<tr>
<td width="188"></td>
<td width="358">Das Zugangspasswort wird automatisch erzeugt und an die
angegebene E-Mail-Adresse gesendet.</td>
</tr>
<tr>
<td width="548" colspan="2">
<hr>
</td>
</tr>
<tr>
<td width="188"></td>
<td width="358"><input type="submit" value="Abschicken" name="regnow"></td>
</tr>
</table>
</center>
</div>
</form>
Alles anzeigen
Die newreg.php :
Code
session_start();
$anrede = $_POST['anrede'];
$vorname = $_POST['vorname'];
$nachname = $_POST['nachname'];
$strasse = $_POST['strasse'];
$plz = $_POST['plz'];
$ort = $_POST['ort'];
$land = $_POST['land'];
$email = $_POST['email'];
$newuser = $_POST['user'];
$daterror = 0;
if ($vorname==""||$nachname==""||$land==""||$email==""||$newuser=="")
{ echo '<script language="JavaScript1.2" type="text/javascript">alert("Sie haben nicht alle erforderlichen Felder ausgefüllt!");
history.back()</script>';
die(); } include("config.inc.php");
$userda1 = mysql_query ("SELECT * FROM db_user WHERE username = '$newuser'");
$userda= mysql_num_rows($userda1); if ($userda>="1")
{ echo '<script language="JavaScript1.2" type="text/javascript">alert("Der gewünschte Username ist bereits vergeben.\nBitte wählen Sie einen anderen Usernamen.");
history.back()</script>';
die(); } $userda2 = mysql_query ("SELECT * FROM db_user WHERE email = '$email'");
$mailda= mysql_num_rows($userda2);
if ($mailda>="1") { echo '<script language="JavaScript1.2" type="text/javascript">alert("Unter der angegebenen E-Mail-Adresse ist bereits ein Account registriert.");
history.back()</script>'; die(); }
$zeitjetzt = time();
$tim02 = rand(100,999);
$newdatcode1 = $zeitjetzt/$tim02;
$passwort = round($newdatcode1);
$anfuegen = "INSERT INTO db_user (username, passwort, email, anrede, vorname, nachname, strasse, plz, ort, land) VALUES ('$newuser', '$passwort', '$email', '$anrede', '$vorname','$nachname', '$strasse', '$plz', '$ort','$land')";
$speicher = mysql_query($anfuegen); echo mysql_error();
$abfrage01 = mysql_query ("SELECT * FROM db_content WHERE name = 'regmail'");
$data = mysql_fetch_row($abfrage01);
$mailtxt = $data['1'];
eval($mailtxt);
mail($email, $betreff, $text, "From: Test.de <test@test.de>");
############################################################################
echo '<script language="JavaScript1.2" type="text/javascript">alert("Herzlichen Glückwunsch!\n\n
Ihre Registrierung war erfolgreich und wir haben Ihnen Ihre persönlichen Zugangsdaten an Ihre angegebene E-Mail-Adresse gesendet.\n\n
Bitte rufen Sie jetzt Ihre E-Mails ab.\n\n
Der Text von test"); history.back(-2)</script>';
?>
Alles anzeigen