FORUM

forum / PHP / Ajout d'un captcha sur le livre d'or

Vous n êtes pas connecté

Page :1

Ajout d'un captcha sur le livre d'or

Auteurs Messages
dav18 Posté à 16h15 le 16 Mar 14

Membre inscrit le 14/03/2014
Messages : 19
Localisation :
Bonjour,



je voudrait installer un capcha dans mon livre d'or  " Guestbook" il me reste plus que ça avant de le mettre sur mon site je galère  afin de le protéger  merci de votre aide que je vous serait très  reconnaissant .

bien à vous !
said Posté à 22h41 le 16 Mar 14

Membre inscrit le 16/09/2012
Messages : 1513
Localisation :
dav18 Posté à 09h15 le 17 Mar 14

Membre inscrit le 14/03/2014
Messages : 19
Localisation :
merci !
said Posté à 20h21 le 17 Mar 14

Membre inscrit le 16/09/2012
Messages : 1513
Localisation :
Ton livre d'or est-il constitué d'un seul fichier ou deux fichiers ?
Est ce qu'on peut voir le code PHP ?

dav18 Posté à 09h46 le 18 Mar 14

Membre inscrit le 14/03/2014
Messages : 19
Localisation :
bonjour ,



j'ai qu'un seul fichier Geustbook.php et en plus  recaptcha.lib.php  dans le dossier livre_d'or   donc deux fichiers au total ! 


voici une capture d'écran de mon formulaire 








et le code  de mon formulaire  :



<center><form method="post" action="guestbook.php"> 

Pseudo : <input name="pseudo" maxlength="25" /><br />
Message :<br />
<textarea name="message" rows="8" cols="55"> </textarea> <br /><br/>

<?php
require_once('recaptchalib.php');
$publickey = "6LesMfASAAAAAMXwFP8rtdvLLDruHR2a7pAyWNxg";
echo recaptcha_get_html($publickey);
?>

<br/>
<input type="submit" value="Envoyer" />



</form></center>

<?php
require_once('recaptchalib.php');
$privatekey = "6LesMfASAAAAALAVQOlYe1-YH-b22F9AthSunyX3";
$resp = recaptcha_check_answer (
$privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]
);

if (!$resp->is_valid) {
echo("vérifier les caractéres antispam ");
}
?>

</div>



il marche bien le soucis qui me laisse perplexe c'est que même si je ne rempli pas le captcha le commentaire peut être poster ?



cdlt





said Posté à 14h20 le 18 Mar 14

Membre inscrit le 16/09/2012
Messages : 1513
Localisation :
Ok d'accord.
Si c'est un seul fichier, le deuxième code devrait être ceci:
<?php   
$privatekey = "cle-Privee";
$resp = recaptcha_check_answer (
$privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]
);

if (!$resp->is_valid) {
echo("Vérifies les caractères antispam ");
}
?>


Mais pour te dire exactement là où il faut placer le code, il faut voir le code du livre d'or.

Si tu peux mettre le code du livre d'or sans le captcha, ça nous permettra de t'aider.
said Posté à 15h43 le 18 Mar 14

Membre inscrit le 16/09/2012
Messages : 1513
Localisation :
J'ai supprimé ton post.
C'est quand même trop dangereux de laisser les identifiants de ta base de donnée dans un forum.
Pour le moment je sais que c'est le code disponible ici http://www.samomoi.com/php/Realisation-d-un-livre-d-or.php

le deuxième code a insérer :
$privatekey = "cle-Privee";
$resp = recaptcha_check_answer (
$privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]
);
 
if (!$resp->is_valid)


là où il faut insérer le code:

DEUXIEME CODE.
if (isset($_POST['pseudo']) AND isset($_POST['message']))

if ($_POST['message'] != NULL) // si le message n'est pas vide

if ($_POST['pseudo'] != NULL) // si le message n'est pas vide

{
/* On utilise htmlentities pour empecher les gens d'inserer du html,
tout code html sera affiché en tant que code html, il ne sera pas interpreté.
et ent_quotes pour convertir les guillemets doubles et les guillemets simples:
il faut noter que c'est pour des raisons de securité qu'on a fait ainsi */
$pseudo = htmlentities($_POST['pseudo'], ENT_QUOTES);


$message = htmlentities($_POST['message'], ENT_QUOTES);
$message = nl2br($message); // nl2br insère un retour à la ligne HTML à chaque nouvelle ligne
$date=date("d/m/Y");//cette fonction permet de savoir la date de l'envoi de message
mysql_query("INSERT INTO guestbook VALUES('','$pseudo','$message','$date')");
}


NB: remplaces DEUXIEME CODE par le code à insérer
said Posté à 17h08 le 18 Mar 14

Membre inscrit le 16/09/2012
Messages : 1513
Localisation :
Télécharges directement le TP du livre d'or comportant le captcha ici
 http://www.samomoi.com/livreorsamomoi.rar
dav18 Posté à 18h54 le 18 Mar 14

Membre inscrit le 14/03/2014
Messages : 19
Localisation :
merci said pour votre sérieux je n'ait pas fait attention sur le coup et je vais essayer ça merci et je vous tiens au courant merci !

cdlt
dav18 Posté à 19h01 le 18 Mar 14

Membre inscrit le 14/03/2014
Messages : 19
Localisation :
bonsoir je vient d'essayer said comme vous l'avez dit et j'ai une page blanche ?


merci de votre aide ..

cdlt
said Posté à 19h14 le 18 Mar 14

Membre inscrit le 16/09/2012
Messages : 1513
Localisation :
C'est seulement le texte "DEUXIEME CODE" qu'il fallait remplacer.
Sinon télécharges le fichier que je viens de poster. Tu regardes comment j'ai mis le code.
Ce dossier compressé contient le livre d'or  avec le captcha. 
dav18 Posté à 13h41 le 19 Mar 14

Membre inscrit le 14/03/2014
Messages : 19
Localisation :
bonjour,


c'est tout bon pour moi  merci encore et j'ai une autre question pourquoi quand je fait F5 pour rafraîchir la page le commentaire se duplique merci pour cette dernière question  ?


cdlt
filou80 Posté à 17h25 le 01 Apr 14

Membre inscrit le 25/03/2014
Messages : 120
Localisation : somme
Bonjour

Comment as tu fait car moi le captcha est installer que je tape ou pas le code sa envoie le message quand meme.

Samomoi

Page : 1