Scripts

Captcha script

Dit is een captchascript die samenwerkt met GD libary. -- SORRY, ben heel druk bezig en ik heb nu geen tijd om het script aan te passen -- -- Voorbeeld even niet beschikbaar --

captcha.php
<?php

// de session starten!

session_start();

// eerst gaan we kijken of er al een session bestaat, indien wel, verwijderen we die zodat er niet altijd de zelfde captcha verschijnt!

if (isset($_SESSION["code"])){
session_destroy();
}

// hier genereren we de captcha code

$captcha = rand(1000,5000);

// en we stellen een session in met de gerenegeerde captcha code

$_SESSION["code"] = $captcha;

// hier geven we de naam van het captchabestand op

$url = "captchaImage.php";

// nu maken we heel simpel een formpje!

?>
<form method="post" action="captchaControleren.php">

Geef de juiste captcha in.

<br>

<table border="0">
<tr>
<td><img src="<?php echo $url; ?>" border="0" alt="Captcha"></td>
<td><input type="text" name="captcha" value=""></td>
</table>
<br>
<input type="submit" value="OK!" name="submit">

</form>
captchaControleren.php
<?php

// Functie voor het controleren of de ingevoerde captcha correct is.
    
        function captcha_check(){
            
            return ($_POST['captcha'] == $_SESSION['captcha']) ? true : false ;
        }

// Set ' $resultaat ' variabele voor het opslaan van het resultaat.
    
        $resultaat = '';
        

// Controleren of het formulier is verzonden.
    
        if( isset ( $_POST['submit'] ) ){ // Ik weet, slechte manier.

        // Controleren of de ingevoerde captcha correct is ingevoerd.
        
            if(captcha_check()){
            
                $resultaat = 'Hoera! De ingevoerde captcha is correct.';
                
            }
            else{

                        
                $resultaat = 'Helaas! De ingevoerde captcha is incorrect.';
                
            }
        }

?>
captchaImage.php
<?php



header("content-type: image/png");


$image = ImageCreate(50, 50); //Plaatje aanmaken met X=300 en Y=75

//We maken een achtergrondkleur 
$achtergrond = ImageColorAllocate($image, 255, 255, 255); //255, 255, 255 = Wit 
//De grootte van ons lettertype 
$grootte = 5; 
//Tekst die we op ons plaatje willen. 
$tekst = $_SESSION["code"];
//Tekstkleur 
$kleur = ImageColorAllocate($image, 255, 0, 0); //255, 0, 0 = Rood 
//De functie ImageString word onder het voorbeeld uitgelegd ! 
ImageString($image, $grootte, 5, 25, $tekst, $kleur); 
//Het plaatje aanmaken. 
ImagePng($image); 
//Het plaatje verwijderen uit het geheugen 
ImageDestroy($image);


?>

Reacties

0
Nog geen reacties.