Vous êtes ici Articles > Installer une Captcha sur votre site PARTIE 2

 

Installer une Captcha sur votre site PARTIE 2

Du coté PHP
 
phpSources
Vu 4429 fois
Enregistré le 19 Nov 2008
  • Digg cet article sur digg.com
  • Bookmark cet article sur del.icio.us
  • Bookmark cet article sur Google
  • Bookmark cet article sur Yahoo
  • Ajoute Installer une Captcha sur votre site PARTIE 2
  • Partage cet article sur Facebook
 
 
 
 

Installer une Captcha sur votre site PARTIE 2


La prochaine tâche importante consiste à créer un formulaire en utilisant l'image que nous venons de générer et à traiter les valeurs envoyées par le visiteur. Comme vous vous en souvenez nous avons mémorisé le code de sécurité dans une variable de session, donc nous devons en premier lieu débuter une session. L’étape suivante consiste à vérifier si le formulaire a été soumis ou non. Si la réponse est négative nous pouvons maintenant afficher un formulaire. À ce point, vous pouvez créer un formulaire aussi complexe que vous le souhaitez. La seule chose importante est que devez ajouter un champ de saisie de texte pour le code de sécurité et, bien sûr, vous devez afficher l’image Captcha. Cette dernière étape est très simple, il suffit d'utiliser notre premier code PHP - qui génère l'image - comme source de l'image. Le formulaire ressemblera à ceci :
.01
.02
.03
.04
.05
.06
.07
 
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" >
         Security code:
              <input name="secure" type="text" size="10" />
              <img src="securitecode.php" alt="Code de sécurité" />
              <input type="submit" name="submitform" value="Envoyer" />
 </form>
Maintenant, retournons à la partie du script qui traite le formulaire. Nous avons d'abord besoin de vérifier l'existence du code de sécurité et dans le cas où le code a été activé, de le convertir en minuscule afin de rendre la casse insensible. Si vous voulez utiliser une solution Captcha par casse sensible, vous devez également modifier le script de création d'image et supprimer la fonction strtolower.

Il est temps de vérifier si le code de sécurité que nous avons enregistré pendant la session est le même que le code de sécurité saisi par le visiteur. Si le code est valide, alors nous effaçons la variable de session et fixons une variable de résultat. Cette variable de résultat, nous indiquera si nous devons afficher le formulaire de nouveau ou non. Vous devez en appeler à votre propre logique d’entrepreneur pour prendre cette décision.


La procédure de vérification complète est la suivante:
.01
.02
.03
.04
.05
.06
.07
.08
.09
.10
.11
.12
 
<?php
   if (isset($_POST['submitform'])){
      $secure = isset($_POST['secure']) ? strtolower($_POST['secure']) : '';
      if ($secure == $_SESSION['securecode']) {
         echo 'Le code de sécurité est ok';
         unset($_SESSION['securecode']);
      }
      else {  echo 'Le code de sécurité est incorrecte!';
         }
    }
?>



C’est tout, nous sommes prêt !

Vous trouverez le code complet du générateur d'image Captcha dans le module code Snipets et le début de l'article dans la première partie:

PARTIE 1
VOIR LE CODE COMPLET


Commentaire
il manque juste : session_start();
 
Ajouter un commentaire
Code de sécurité

Attention: Les champs marqués d'une étoile * sont obligatoires
 
Quelques articles qui devraient vous intéresser