Ich habe mit PHP ein kleines Script für ein Captcha gebastelt, welches mit Sessions arbeitet. Nun will das Script aber nichts in die Session reinschreiben. Was mache ich falsch?
Mein Code:
<?phpsession_start();function buchstabe($key) {$key[] = 'A';$key[] = 'B';$key[] = 'C';$key[] = 'D';$key[] = 'E';$key[] = 'F';$key[] = 'G';$key[] = 'H';$key[] = 'I';$key[] = 'J';$key[] = 'K';$key[] = 'L';$key[] = 'M';$key[] = 'N';$key[] = 'O';$key[] = 'P';$key[] = 'Q';$key[] = 'R';$key[] = 'S';$key[] = 'T';$key[] = 'U';$key[] = 'V';$key[] = 'W';$key[] = 'X';$key[] = 'Y';$key[] = 'Z';$key[] = '1';$key[] = '2';$key[] = '3';$key[] = '4';$key[] = '5';$key[] = '6';$key[] = '7';$key[] = '8';$key[] = '9';$key[] = '0';$anzahl = count ( $key );$anzahl--;srand(microtime()*1000000);$zufall = rand(0,$anzahl);return $key[$zufall];}function zahl($deg) {$deg[] = 1;$deg[] = 2;$deg[] = 3;$deg[] = 4;$deg[] = 5;$deg[] = 6;$deg[] = 7;$deg[] = 8;$deg[] = 9;$deg[] = 10;$anzahl = count ( $deg );$anzahl--;srand(microtime()*1000000);$zufall = rand(0,$anzahl);return $deg[$zufall];}$grafik = "bg.png";$font_g = 14; //Schriftgröse$font = "../Buttons/arial.ttf"; //Schrift (ttf)$img = imageCreateFromPNG($grafik);$schwarz = imageColorAllocate($img, 0, 0, 0);$a = buchstabe($key);$b = buchstabe($key);$c = buchstabe($key);$d = buchstabe($key);$e = buchstabe($key);ImageTTFText($img, $font_g, zahl($deg)*36, 20, 20, $schwarz, $font, buchstabe($key));ImageTTFText($img, $font_g, zahl($deg)*36, 50, 20, $schwarz, $font, buchstabe($key));ImageTTFText($img, $font_g, zahl($deg)*36, 80, 20, $schwarz, $font, buchstabe($key));ImageTTFText($img, $font_g, zahl($deg)*36, 110, 20, $schwarz, $font, buchstabe($key));ImageTTFText($img, $font_g, zahl($deg)*36, 140, 20, $schwarz, $font, buchstabe($key));$_SESSION['captcha'] = $a.$b.$c.$d.$e;//Headerheader("Content-type: image/PNG");//AusgebenimagePNG($img);//Speicher freigebenimageDestroy($img);?>
Die Variable $_SESSION['captcha'] bleibt aber leer.
