Peter: Variable speichern

Beitrag lesen

HI!

Ich versuche gerade ein(e) sogenannt(es) Captcha zu basteln.

Die Basics wären soweit funktionsfähig, wäre da nicht ein Logikproblem.

1. Beim Aufruf der Seite erzeuge ich eine Zufallszahl und schreibe diese in einer Variablen in die Session.

2. Diese Zufallszahl schreibe ich auch in ein image, welches ich anzeige.

3. Jetzt soll der user die Zahl aus dem Bild in ein Inputfeld schreiben und das Formular absenden.

So und hier ist nun mein Problem, da das ganze Spiel wieder von vorne beginnt und eine neue Zufallszahl berechnet wird :-(

Kann mir zufällig jemand einen Tipp geben wie man solche Probleme in PHP behandeln kann???

Zum besseren Verständnis ein wenig Code:

  
<html>  
<head></head>  
<body>  
<form method="POST" name="test" action="<?php echo $PHP_SELF?>">  
<img src="image.jpg">  
 <input type="text" name="testid">  
 <input type="submit" name="valid" value="Abschicken">  
</form>  
</body>  
</html>  

  
<?PHP  
@session_start ();  
  
    $vari = strval(rand());  
    $image = imagecreate(100, 55);  
    $farbe_body=imagecolorallocate($image,243,243,243);  
    $farbe_b = imagecolorallocate($image,10,36,106);  
    imagestring ($image, 5,0, 0, $vari, $farbe_b);  
    imagejpeg($image,"image.jpg",100);  
    $_SESSION['vari'] =  $vari;  
  
  
if(isset($_POST['valid']))  
{   $temp = $_SESSION['vari'];  
  
   if($_POST['testid'] == $temp )  
      echo " gut" ;  
    else  
    {  
        echo " schlechter";  
        $vari = strval(rand());  
        $image = imagecreate(100, 55);  
        $farbe_body=imagecolorallocate($image,243,243,243);  
        $farbe_b = imagecolorallocate($image,10,36,106);  
        imagestring ($image, 5,0, 0, $vari, $farbe_b);  
        imagejpeg($image,"image.jpg",100);  
        $_SESSION['vari'] =  $vari;  
     }  
}  
?>  

Danke für evtl. Hilfe
Peter