Utilisation de recaptcha

Résolu
forumeur -  
Dj Nam Messages postés 327 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,


Je cherche à installer recaptcha sur mon formulaire, il me parait simple à utiliser. Pourtant, il m'affiche toujours "le captcha antispam n\'est pas valide".

Mon formulaire :
 require_once('../../js/recaptcha/recaptchalib.php');
          $publickey = "clé publique "; // you got this from the signup page
          echo recaptcha_get_html($publickey);



   echo'<input class="'.$prefixe.'" type="submit" name="submit" value="send" style="width:100" '.$disabled.'></input> <input class="'.$prefixe.'" type="reset" name="submit" value="cancel" style="width:100"></input>


Ma page de vérification :
<?php
  require_once('../js/recaptcha/recaptchalib.php');
  include('configuration/head.php');
  $privatekey = "clé privée";
  $resp = recaptcha_check_answer ($privatekey,
                                $_SERVER["REMOTE_ADDR"],
                                $_POST["recaptcha_challenge_field"],
                                $_POST["recaptcha_response_field"]);
   
   if (!$resp->is_valid) { // Test si le captcha a bien été rempli
// Si le captcha n'est pas valide
echo 'Oups, le captcha antispam n\'est pas valide. Veuillez recommencer';
}
else{
 
echo "ici, le code est valide";

$pseudo = strip_tags(secure($_POST['pseudo']));
$titre = strip_tags(secure($_POST['titre']));
$texte = strip_tags($_POST['texte']);
$note = strip_tags($_POST['note']);
$id = intval($_POST['id']);
$date = date("y-m-d");
$sql = "INSERT INTO comments(id, pseudo,titre, texte, note, date, news) VALUES('','$pseudo','$titre','$texte','$note','$date','$id')";
        mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

}
?>


Merci d'avance pour votre aide !

6 réponses

Dj Nam Messages postés 327 Date d'inscription   Statut Membre Dernière intervention   41
 
Bonjour,

As-tu pense a demarrer la session sur tes deux fichiers avec session_start, as-tu bien colle ta cles privee aux deux endroits ou c'est necessaire ? Et enfin, as-tu essayer sur ta page de traitement de faire un var_dump($_POST) pour verifier les valeurs ?
0
forumeur
 
Même avec le session start, le code reste invalide. Les deux clés sont bien renseignées.

Avec un var_dump, les valeurs de $_POST sont bonnes.
0
forumeur
 
Je teste recaptcha sur un formulaire tout simple pour voir, et le résultat est le même. Un var dump sur $resp m'indique que la variable est NULL.
0
Dj Nam Messages postés 327 Date d'inscription   Statut Membre Dernière intervention   41
 
As-tu bien active l'affichage des erreurs (cf : error_reporting()) car si la variable $resp est nulle tu devrais avoir une erreur soit sur le require_once soit lorsque tu utilise la variable.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
forumeur
 
Après pas mal de recherches sur google, j'ai fini par trouver d'où venait le problème : la balise form dans la balise table est invalide, j'ai du mettre form en dehors. Voilà.
0
Dj Nam Messages postés 327 Date d'inscription   Statut Membre Dernière intervention   41
 
Ah bah oui, il faut englober le tableau par la balise form.

Bonne continuation alors et si tu as le moindre souci, n'hesite pas a revenir ;)
0