Comment associer ensemble deux formulaires?
Posté : 25 juil. 2014, 13:29
Bonjour,
1)J'ai un formulaire d'identification (avec une page pour le formulaire et une autre pour le traitement du formulaire) nom d'utilisateur/mot de passe.
Ce programme fonctionne avec une session.
Ca marche très bien.
2)J'ai un formulaire pour un CAPTCHA (avec une page pour le formulaire et une autre pour le traitement du formulaire).
Ce programme fonctionne aussi avec une session.
Ca marche très bien aussi.
Les deux programmes fonctionnent parfaitement mais ils sont dissociés. J'aimerais maintenant pouvoir les associer ensemble.
Hors, je voudrais éviter à l'utilisateur de saisir le champs du CAPTCHA sur une page et ceux de ses données d'identification sur une deuxième page.
Je voudrais que tout soit sur une seule page.
Que me conseilleriez-vous sur la manière d'associer les deux programmes ensemble?
Ce que j'ai essayé de faire:
I. J'ai essayé d'intégrer le programme du CAPTCHA dans le programme d'identification.
J'ai pour cela intégré la page du formulaire du CAPTCHA dans la page du formulaire d'identification avec un include
et j'ai intégré la page du traitement de formulaire du CAPTCHA dans la page de traitement de formulaire d'identification avec un include.
II. J'ai fait du bouton envoi pour l'identification un bouton envoi à la fois pour l'identification et le CAPTCHA. Pour cela, dans la page
de formulaire du CAPTCHA j'ai supprimé le bouton envoi et les balises form afférentes et du coup le bouton pour écrire la réponse
du CAPTCHA est rattaché au bouton envoi initialement prévu que pour les données d'identification nom d'utilisateur et mot de passe.
Vous suivez?
J'ai alors un problème causé par la ligne de code session_start() se trouvant dans la page de formulaire du CAPTCHA:
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at
"nom de la page du formulaire d'identification qui contient l'include avec la page du formulaire du captcha")
in "page de formulaire du captcha" à la ligne où est écrit session_start;
Si je fais fis de cette ligne, en la mettant en commentaire session_start => /*session_start*/
je n'ai plus d'indication, je peux rentrer toutes mes données sur mon site mais le CAPTCHA permet d'entrer
dans la session à accès réservé que la réponse au CAPTCHA soit juste ou non.
En fait, je crois que le navigateur ne considère pas toute réponse comme juste mais je crois
qu'il ne regarde tout simplement pas du tout la réponse tapée par l'utilisateur.
Si vous pouvez m'aider c'est gentil car je bloque depuis un bon moment.
Je ne sais pas si la piste aventureuse que j'ai prise est adéquate ou non.
Si oui, pouvez-vous m'aider à continuer dans ce sens car je bloque?
Si non, pouvez-vous me dire comment envisager une autre manière de permettre l'association des programmes?
1)J'ai un formulaire d'identification (avec une page pour le formulaire et une autre pour le traitement du formulaire) nom d'utilisateur/mot de passe.
Ce programme fonctionne avec une session.
Ca marche très bien.
2)J'ai un formulaire pour un CAPTCHA (avec une page pour le formulaire et une autre pour le traitement du formulaire).
Ce programme fonctionne aussi avec une session.
Ca marche très bien aussi.
Les deux programmes fonctionnent parfaitement mais ils sont dissociés. J'aimerais maintenant pouvoir les associer ensemble.
Hors, je voudrais éviter à l'utilisateur de saisir le champs du CAPTCHA sur une page et ceux de ses données d'identification sur une deuxième page.
Je voudrais que tout soit sur une seule page.
Que me conseilleriez-vous sur la manière d'associer les deux programmes ensemble?
Ce que j'ai essayé de faire:
I. J'ai essayé d'intégrer le programme du CAPTCHA dans le programme d'identification.
J'ai pour cela intégré la page du formulaire du CAPTCHA dans la page du formulaire d'identification avec un include
et j'ai intégré la page du traitement de formulaire du CAPTCHA dans la page de traitement de formulaire d'identification avec un include.
II. J'ai fait du bouton envoi pour l'identification un bouton envoi à la fois pour l'identification et le CAPTCHA. Pour cela, dans la page
de formulaire du CAPTCHA j'ai supprimé le bouton envoi et les balises form afférentes et du coup le bouton pour écrire la réponse
du CAPTCHA est rattaché au bouton envoi initialement prévu que pour les données d'identification nom d'utilisateur et mot de passe.
Vous suivez?
J'ai alors un problème causé par la ligne de code session_start() se trouvant dans la page de formulaire du CAPTCHA:
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at
"nom de la page du formulaire d'identification qui contient l'include avec la page du formulaire du captcha")
in "page de formulaire du captcha" à la ligne où est écrit session_start;
Si je fais fis de cette ligne, en la mettant en commentaire session_start => /*session_start*/
je n'ai plus d'indication, je peux rentrer toutes mes données sur mon site mais le CAPTCHA permet d'entrer
dans la session à accès réservé que la réponse au CAPTCHA soit juste ou non.
En fait, je crois que le navigateur ne considère pas toute réponse comme juste mais je crois
qu'il ne regarde tout simplement pas du tout la réponse tapée par l'utilisateur.
Si vous pouvez m'aider c'est gentil car je bloque depuis un bon moment.
Je ne sais pas si la piste aventureuse que j'ai prise est adéquate ou non.
Si oui, pouvez-vous m'aider à continuer dans ce sens car je bloque?
Si non, pouvez-vous me dire comment envisager une autre manière de permettre l'association des programmes?