Captcha Abfrage für Formulare
Samstag, 24. März 2007 | Autor: Pr0g
Testformular für die Codeabfrage
Nun wir die Datei “formular.php” geöffnet und der jetzige Inhalt durch den folgenden Code ersetzt:
<html>
<head>
<body>
<?php
$fehler = '';
$captcha_input_nr = (!empty($_POST['captcha_input_nr']) ? $_POST['captcha_input_nr'] : '');
if (!empty($_POST['captcha_code' . $captcha_input_nr])) {
// Datenbankverbindung einbinden
require('dbconnect.php');
// Captcha Code anhand der Id aus der Datenbank lesen
$sql = 'SELECT code FROM captcha WHERE hash="' . mysql_real_escape_string($_POST['captcha_hash']) . '"';
$query = mysql_query($sql);
$row = mysql_fetch_array($query);
// Prüfen ob der Code mit der Benutzereingabe übereinstimmt
if ($row['code'] == strtoupper($_POST['captcha_code' . $captcha_input_nr])) {
// Code aus DB löschen
$sql = 'DELETE FROM captcha WHERE hash="' . mysql_real_escape_string($_POST['captcha_hash']) . '"';
mysql_query($sql);
// An dieser Stelle kann die normale Verarbeitung des Formulars stattfinden
echo 'Richter Code wurde eingegeben.';
} else {
$fehler = 'Bitte den richtigen Sicherheitscode eingeben!<br /><br />';
}
}
if (empty($_POST['captcha_code' . $captcha_input_nr]) || !empty($fehler)) {
// Captcha Id erzeugen
$captcha_hash = md5(time());
// Zufallsnummer für das Eingabefeld erzeugen
$input_nr = rand (1000, 9999);
?>
<form action="formular.php" method="post">
<!-- Hier steht bspw. der Code eines Kontaktformulars oder Gästebuchs -->
<?php
if (!empty($fehler)) {
echo '<span style="color:#F00">Fehler: ' . $fehler . '</span>';
}
?>
<input type="hidden" name="captcha_hash" value="<?php echo $captcha_hash; ?>" />
<img src="captcha.php?h=<?php echo $captcha_hash; ?>" alt="" />
<br />
<br />
Sicherheitscode: <input type="text" name="captcha_code<?php echo $input_nr; ?>" />
<input type="hidden" name="captcha_input_nr" value="<?php echo $input_nr; ?>" />
<br />
<br />
<input type="submit" value="Senden" />
</form>
<?php
}
?>
</body>
</head>




Sonntag, 2. März 2008
Der Captcha-Artikel sieht *sehr* gut aus (auch wenn ich noch keine Zeit hatte, ihn im einzelnen durchzulesen). Vielen Dank!
Sonntag, 2. März 2008
Es scheint allerdings gute Argumente zu geben, auf Captchas zu verzichten, vgl.
http://1ngo.de/web/captcha-spam.html
Sonntag, 2. März 2008
Klar sind Captchas nicht das perfekte Wundermittel gegen Spam, wurde von mir ja auch nie behauptet. Ich sehe sie lediglich als eine Lösung von vielen und daher der Artikel
Dienstag, 24. Juni 2008
Das Tut ist wirklich gut,bei mir gibt es allerdings einen Schönheitsfehler,es findet kein Abbruch statt wenn ich überhaupt nichts eintrage.??habe es in mein Gästebuch eingefügt. (-: