Klaus: Captcha

Beitrag lesen

Moin Jungs,
ich hab ein Problem, und zwar erzeugt mir mein Captcha-Skript kein png. Ich kann aber keinen Fehler finden.
Die Sache läuft so, daß ich die php-erzeugte png-Datei über

<img src="./captcha/captcha.php" border="0" title="Sicherheitscode">

einfüge. Das php-Skript sieht folgendermaßen aus:

<?php  
 session_start();  
 unset($_SESSION['captcha_spam']);  
  
 function randomString($len)  
 {  
  function make_seed()  
  {  
   list($usec , $sec) = explode (' ', microtime());  
   return (float) $sec + ((float) $usec * 100000);  
  }  
  srand(make_seed());  
  
  //Der String $possible enthält alle Zeichen, die verwendet werden sollen  
  $possible="ABCDEFGHJKLMNPRSTUVWXYZabcdefghijkmnpqrstuvwxyz23456789";  
  $str="";  
  while(strlen($str)<$len)  
  {  
   $str.=substr($possible,(rand()%(strlen($possible))),1);  
  }  
  return($str);  
 }  
  
 $text = randomString(5);  //Die Zahl bestimmt die Anzahl stellen  
 $_SESSION['captcha_spam'] = $text;  
  
 header('Content-type: image/png');  
 $img = ImageCreateFromPNG('captcha.png'); //Backgroundimage  
 $color = ImageColorAllocate($img, 0, 0, 0); //Farbe  
 $ttf = "./captcha/xfiles.ttf"; //Schriftart  
 $ttfsize = 25; //Schriftgröße  
 $angle = rand(0,5);  
 $t_x = rand(5,30);  
 $t_y = 35;  
 imagettftext($img, $ttfsize, $angle, $t_x, $t_y, $color, $ttf, $text);  
 imagepng($img);  
 imagedestroy($img);  
?>

Kann es vielleicht an der Session liegen? Die Datei wird nämlich innerhalb eines Buffers (ob_start()) ausgeführt...

Vielen Dank und Grüße aus dem warmen Süden,

Klaus