Code-Snippets » Captcha mit Buchstaben

Captcha mit Buchstaben

Neben meinem Captcha-Skript, welches eine einfache Mathe-Aufgabe beinhaltet, kannst du mit diesem Code-Schipsel ein Captcha mit einer zufälligen Zeichenfolge aus Groß- und Kleinbuchstaben anzeigen lassen!

Code anklicken zum kopieren

function erstelleZufaelligesCaptcha($laenge = 6) {
session_start();

// Generiere eine zufällige Zeichenfolge aus Groß- und Kleinbuchstaben
$zeichenfolge = '';
$zeichen = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
$zeichenlaenge = strlen($zeichen);

for ($i = 0; $i < $laenge; $i++) {
$zufallsIndex = rand(0, $zeichenlaenge - 1);
$zeichenfolge .= $zeichen[$zufallsIndex];
}

// Die Zeichenfolge in der Sitzung speichern
$_SESSION['captcha_text'] = $zeichenfolge;

return $zeichenfolge;
}

function pruefeCaptcha($benutzerEingabe) {
session_start();

// Überprüfen, ob die Sitzung für das Captcha-Text existiert
if (isset($_SESSION['captcha_text'])) {
// Das in der Sitzung gespeicherte Captcha-Text abrufen
$richtigeZeichenfolge = $_SESSION['captcha_text'];

// Überprüfen, ob die Benutzereingabe mit dem richtigen Captcha-Text übereinstimmt (case-insensitive)
if (strcasecmp($benutzerEingabe, $richtigeZeichenfolge) == 0) {
// Die Eingabe ist korrekt
return true;
}
}

// Die Eingabe ist falsch oder es gibt keine Sitzung
return false;
}

// Beispiel-Nutzung:
$erzeugteZeichenfolge = erstelleZufaelligesCaptcha(); // Erstelle ein zufälliges Captcha
$benutzerEingabe = $_POST['captcha_eingabe']; // Benutzereingabe aus Formularfeld abrufen

if (pruefeCaptcha($benutzerEingabe)) {
echo "Captcha korrekt gelöst.";
} else {
echo "Captcha falsch gelöst. Bitte versuchen Sie es erneut.";
}

Code anklicken zum kopieren


Du darfst dieses Snippet kostenlos und uneingeschränkt nutzen, einschließlich kommerzieller Zwecke! Ich würde mich sehr darüber freuen, wenn du als kleine Geste der Anerkennung einen Link zu meiner Webseite auf deiner eigenen Seite platzieren könntest. Vielen Dank! :)