Accès au manager - réservé aux membres

Navigation
Archives

Du coté PHP

Informations sur l'article

Article écrit le 19 Nov 2008 par phpSources

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 [1]

Invité
le 20/11/2008 à 07:24:00
il manque juste :
session_start();

Poster un commentaire

:P :) :wink: :lol: :surprised: :confused: :mad: :no:
Taille du texte:
Couleur:
Code de sécurité

Les dernières offres d'emploi

Déposer vos articles

Déposer vos articles

Nous accueillons avec plaisir les articles et les critiques de livres, et nous encourageons les entreprises à contribuer avec les rapports d'industrie sur l'utilisation avantageuse de PHP. Vous pouvez également soumettre des articles de journaux et les publications de la presse professionnelle telles que les annonces de produits, et nous serons heureux de les publier sur notre site.

Contactez-nous