Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2246 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  generer captcha et verifier saisie dans formulaire [RESOLU]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

generer captcha et verifier saisie dans formulaire [RESOLU]

n°1044057
pmusa
▓▓▓▓▓▓▓
Posté le 12-04-2005 à 12:44:14  profilanswer
 

slt.  :hello:  
j'ai une page qui crée une image php dite captcha avec des lettre dedans du style --> aYnFcsL
 
lors de l'inscription le visiteur doit saisir ces lettres dans un champ de saisie et je veux que mon formulaire verifie la validite de ce code, en gros si code de l'image == code saisi par l'internaute.
 
dans mon formulaire j'ai ça
<img src="codeverif.php" />
 
qui affiche l'image
puis un input
<input type="text" name="verif" />
 
merci


Message édité par pmusa le 13-04-2005 à 17:50:52
mood
Publicité
Posté le 12-04-2005 à 12:44:14  profilanswer
 

n°1044084
KangOl
Profil : pointeur
Posté le 12-04-2005 à 12:57:56  profilanswer
 

et alors ??


---------------
Nos estans firs di nosse pitite patreye...
n°1044616
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 12-04-2005 à 18:04:36  profilanswer
 

bah j'arrive pas a me demerder.  [:aloy]  
 
en fait il faudrait que je trouve un moyen de trouver/creer une variable qui contienne le code, par exemple aYnFcsL  
comme ça j'aurai un truc du style $chaine = aYnFcsL; et ça sera super facile de verfier si le code qu'il a saisi correspond au captcha.
 
edit:
et commme codeverif.php a un header () de type image je sais pas du tout comment faire.
je me suis dit ouèèè, vu que je fais un <img src="codeverif.php" /> je pourrai aussi recuperer la chaine, c'est comme une inclusion.... mais non.
 
@+


Message édité par pmusa le 12-04-2005 à 18:07:57
n°1044630
KangOl
Profil : pointeur
Posté le 12-04-2005 à 18:13:07  profilanswer
 

pour avoir le "code" dans différentes pages : sessions (pas coockies, sinon possibilité de tricher)
 
pour generer les code : uniqueid


---------------
Nos estans firs di nosse pitite patreye...
n°1044637
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 12-04-2005 à 18:17:39  profilanswer
 

'vais essayer les sess.
ça marche même si le fichier est un header image? :/
 
edit:
j'annonce l'echec de cette idee. variable de session non-envoyée.  [:airforceone]


Message édité par pmusa le 12-04-2005 à 18:26:35
n°1044674
KangOl
Profil : pointeur
Posté le 12-04-2005 à 18:57:30  profilanswer
 

faut faire un session_start :o


---------------
Nos estans firs di nosse pitite patreye...
n°1044755
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 12-04-2005 à 19:58:43  profilanswer
 

yééé sèèèè.  :kaola:  
 
je tiens a souligner le fait que j'ai un

Code :
  1. header('Content-type: image/png');


donc est ce que ça pourrait en être la cause. et l'inclusion de ce fichier ne sea fiat que  sous forme d'IMAGE.
 
<img src="codeverif.php" />
 
codeverif.php etant le fichier php qui GENERE l'IMAGE.
 
voilà, en fait j'en sais rien.  :pt1cable:  
 
à la fin de codeverif.php ça se présente comme ça:

Code :
  1. $_SESSION['code'] = $chaine;
  2. header('Content-type: image/png');
  3. imagepng($image);
  4. imagedestroy($image);


 
sachant que j'ai déjà essayé de bouger la place de la creation de la variable de session un peu partout dans le fichier des fois que.  :D  
 
merci :hello:


Message édité par pmusa le 12-04-2005 à 19:59:41
n°1044866
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 12-04-2005 à 20:36:43  profilanswer
 

j'ai trouvé un source sur le web ricain. je vais me debrouiller avec.  ;)  
 
merci.  :hello:

n°1045681
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 13-04-2005 à 12:30:02  profilanswer
 

KangOl a écrit :

faut faire un session_start :o


je corrige:
 
en re-re-re-re-lisant (!) mon source, je me suis rendu compte que le problème n'etait pas dans la fichier qui genere le captcha mais... dans le fichier formulaire.
 
j'avais omis de solliciter la session dans ce dernier.  [:aloy]  


Message édité par pmusa le 13-04-2005 à 13:29:13
n°1045743
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 13-04-2005 à 13:32:21  profilanswer
 

j'ai un nouveau prob.
 
en fait, la session enregistrer le code precedent et pas celui du captcha ACTUEl et ainsi de suite quand on recharge la page. :/
 
par exemple, dans l'image c'est ecrit bdBgV, je fais un echo de la session pour voir ce que ça donne et j'ai, bizarrement, 1gh45. quand je rafraichi la page, c'ette fois j'ai jh6fgh et dans le echo j'ai bdBgV. vous comprenez? le echo a en fait un temps de retard et je ne vois pas à quoi il pourrai être du.
 
merci de m'aider, c'est lourd ce truc.  :pfff:

mood
Publicité
Posté le 13-04-2005 à 13:32:21  profilanswer
 

n°1045922
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 13-04-2005 à 15:01:00  profilanswer
 

:bounce:

n°1046034
soju
One shot !
Posté le 13-04-2005 à 15:51:10  profilanswer
 

le comportement que tu décris est normal, tu affectes $_SESSION['code'] à la fin de codeverif.php, hors l'image est chargée après ton formulaire.
de plus ce n'est pas bien grave car j'imagine que tu verifies le code après dans une page de validation, et dans cette page là $_SESSION['code'] aura la bonne valeur.

n°1046132
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 13-04-2005 à 16:35:45  profilanswer
 

je ne suis pas ton raisonnement. tu affirme que ce n'est pas grave:
si, le code que le visiteur tape n'est plus celui qu'il voit en fait, c'est le "précedent". :/
 
ça m'embête.
 
qqn a une alternative?

n°1046134
soju
One shot !
Posté le 13-04-2005 à 16:39:00  profilanswer
 

pmusa a écrit :

si, le code que le visiteur tape n'est plus celui qu'il voit en fait, c'est le "précedent".

non, l'utilisateur tapera le code qu'il voit, tu penses que c'est le précedent car tu affiches $_SESSION['code'] avant de l'avoir affecter (affectation dans dans codeverif.php)

n°1046144
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 13-04-2005 à 16:48:53  profilanswer
 

ouep. puteinnggg uè je comprend.  :wahoo: faut être sacrément rigoureux avec PHP heinggg...
 
d'accord, mais dans ce cas je fais comment pour verfier si le code est juste DANS le formulaire?  :D eh!

n°1046168
soju
One shot !
Posté le 13-04-2005 à 16:57:36  profilanswer
 

pmusa a écrit :

d'accord, mais dans ce cas je fais comment pour verfier si le code est juste DANS le formulaire?  :D eh!

cette question n'a pas de sens car lorsque tu vas verifier la validité du code saisi par l'utilisateur, $_SESSION['code'] aura la bonne valeur.

n°1046192
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 13-04-2005 à 17:04:29  profilanswer
 

chu perdu soju.  [:aloy] largué.
 
matte mon code
 

Code :
  1. <?php
  2. session_start();
  3. ?>
  4. <form method="post" action="">
  5. <input type="hidden" name="tour" />
  6. <img src="codeverif.php" />
  7. <input type="text" name="code" />
  8. <input type="Submit" value="valider" />
  9. </form>
  10. <?php
  11. if($tour){
  12. if(($_SESSION['code']) == ($_POST['code'])){
  13. echo "code ok, ici mon INSERT mysql...<br />\n";}
  14. else{
  15. echo "code incorrect!";}
  16. }
  17. else{
  18. echo "complètez le formulaire<br />\n";
  19. echo $_SESSION['cap']; }?>


 
le echo de $_SESSION['cap'] c'est pour voir si ça correspond à l'image et comme je te le dis, ça n'est pas identique.
ensuite, le traitement du formulaire ne marche jamais. :/
 
merci de m'éclairer, je crois que je tiens un bout là mais tu tiens des propos relativement philosophiques "cette question n'a pas de sens" alors moi je -->  :pt1cable:  
 
merci pour ta comprehension.

n°1046238
soju
One shot !
Posté le 13-04-2005 à 17:17:54  profilanswer
 

hou là... un peu de rigueur !
 
c'est quoi $_SESSION['cap'] ? tu utilises $_SESSION['code'] normalement non ?
et $tour est toujours vide donc normal que tu n'es rien...

n°1046277
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 13-04-2005 à 17:29:10  profilanswer
 

ouep c'est bien $_SESSION['code']  :pfff:  
ah $tour est vide?  :whistle:  
 
je pensais qu'en mettant

Code :
  1. <input type="hidden" name="tour" />


je pouvais savoir si le submit de formulaire avait été executé. si oui, j'indique le resultat, ok ou incorrect, sinon on demande au visiteur de compléter.
 
faut que je rajoute le "value" c'est ça?  :??:

n°1046300
soju
One shot !
Posté le 13-04-2005 à 17:33:52  profilanswer
 

<input type="submit" name="submit" value="valider" />

et utilise

$_POST['submit']


voilà, je laisse tomber pour aujourd'hui, on n'est pas là pour t'apprendre le html...

n°1046320
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 13-04-2005 à 17:37:40  profilanswer
 

oui forcément c'est plus astucieux. :/
 
bah mon xhtml je le connais très très bien.  [:aloy] je tâte aussi beaucoup de CSS. et comme je faisait pas beaucoup de formulaire (vu que ça necessite du PHP derrière et que je ne connaissais pas) je ne me suis pas attardé dessus.  :)  
 
 
enfin merci beaucoup, tu m'en as dis plus qu'il n'en faut je crois, je vais tester.
 
merci beaucoup Soju.  :hello:
 
edit:
 
hmmm... c'était en fait ce batard de $tour.  :o quand je pense a combien de fois j'ai relu mon code...  :(  
bref, là ça roxx baÿbaÿ!
 
merci un dernière fois.   ;)  
 
je crois que le probleme est definitivement resolu


Message édité par pmusa le 13-04-2005 à 17:43:24
n°1137529
Tommy34
Posté le 01-07-2005 à 16:51:44  profilanswer
 

Up
 
Pourrais tu m'expliquer comment faire passer la variable de session stp ?
Je n'arrive pas à récupèrer le code de l'image, j'ai essayé d'ouvrir une session sur la page qui génère l'image mais ça ne fonctionne pas, je ne sais pas où placer le :
 
session_start();
session_register("code" );

n°1137587
pmusa
&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;&#9619;
Posté le 01-07-2005 à 17:33:56  profilanswer
 

contacté par MP.  :jap:

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  generer captcha et verifier saisie dans formulaire [RESOLU]

 

Sujets relatifs
Question sur la validation d'un formulaireBug bizarre [résolu]
[RESOLU] Pb d'affichage avec plusieurs élémentsfaire un code propre sur mon un formulaire de verif. inscription
Formulaire, problème insertion de données[HTML] probleme de lien image[resolu]
Log -> PHP -> Mysql | Coment faire ? [Résolu][java] clone() [partielement resolu]
Rectangles pleins - [RESOLU]Modifier une étiquette de formulaire avec VB
Plus de sujets relatifs à : generer captcha et verifier saisie dans formulaire [RESOLU]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR