Hier sind einige Regeln, die das Leben im Forum vereinfachen und schneller zur Lösung des Problems beitragen.
- Poste stehts die URL zur Seite, wo das Script eingebaut ist
- Poste allfällige Fehlermeldungen
- Poste, falls du was abgeändert hast, deinen ganzen Code
WICHTIG!
Falls kein Bild angezeigt wird, die Datei fehler.php in den Ordner captcha laden und zur Datei verweisen.
fehler.php
Code:
<?php
session_start();
echo "<h2>Infos über das Captcha</h2>";
unset($_SESSION['captcha_spam']);
$text = rand(1000,10000); //Zufallszahl
function encrypt($string, $key) {
$result = '';
for($i=0; $i<strlen($string); $i++) {
$char = substr($string, $i, 1);
$keychar = substr($key, ($i % strlen($key))-1, 1);
$char = chr(ord($char)+ord($keychar));
$result.=$char;
}
return base64_encode($result);
}
$_SESSION['captcha_spam'] = encrypt($text, "8h384ls94"); //Key
$_SESSION['captcha_spam'] = str_replace("=", "", $_SESSION['captcha_spam']);
echo "Zahlencode: ".$text."<br>";
echo "Session Captcha: ".$_SESSION['captcha_spam']."<br>";
$img = ImageCreateFromPNG('captcha.PNG'); //Backgroundimage
$color = ImageColorAllocate($img, 0, 0, 0); //Farbe
$ttf = $_SERVER['Document_Root']."/arial.ttf"; //Schriftart
echo "Schriftpfad: ".$ttf."<br>";
$ttfsize = 25; //Schriftgrösse
$angle = rand(0,5);
$t_x = rand(5,50);
$t_y = 35;
imagettftext($img, $ttfsize, $angle, $t_x, $t_y, $color, $ttf, $text);
error_reporting(E_ALL);
echo "Image (Zeichenwirrwar):<br>";
imagepng($img);
imagedestroy($img);
?>