Php & les formulaires

Résolu
cs_Dave73 Messages postés 25 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 10 août 2005 - 3 août 2005 à 19:57
irkiouak Messages postés 68 Date d'inscription mardi 21 novembre 2000 Statut Membre Dernière intervention 10 octobre 2006 - 4 août 2005 à 18:25
<!--StartFragment --> bonjour;

j'ai tenté de faire un quizz tout simple
le problème est que j'utilise les boutons radios.
Mais pour éviter les tricheurs, j'ai fais des "groupes" pour qu'un seul bouton soit cochable (ils utilisent le champ name).
Le problèmes c'est que pour c'est groupe, j'ai besoin du champ name. Et quand je passe à la vérification pour connaitre les réponses, PHP répond faux a chaque question vu qu'il vérifie le champ name, mais il est toujours le même (pour cause des groupes). J'espère que le code parlera mieux que moi :
<?php
if (isset($_POST['q1']) AND isset($_POST['pseudo']))
{
echo 'Bien reçu. Bienvenue '.$_POST['pseudo'].'
';
if ($_POST['q1'] == 'Marseille')
{
echo 'Bonne réponse ! Bravo ! ';
}
else {
echo 'Mauvaise Réponse ! La bonne réponse était Marseille';
}
}
else { ?>
<form method="post" action="quizz.php">

Votre pseudo :

Quel est l'équipe la plus forte de Ligue 1 ?

<label>Marseille</label>

<label>Paris</label>

<label>Bordeaux</label>

<?php } ?>

En fait, il me faudrait une solution pour pouvoir vérifier mon formulaire, tout en gardant le groupe.
Merci d'avance

8 réponses

cs_Dave73 Messages postés 25 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 10 août 2005
4 août 2005 à 08:09
J'ai réglé le problème. Irkouiak ton code ne marchait pas.
Voilà ce que j'ai fais :
<?php
if (isset($_POST['radioq1']) AND isset($_POST['pseudo']))
{
echo 'Bien reçu. Bienvenue '.$_POST['pseudo'].'
';
if ($_POST['radioq1'] = 'Marseille')
{
echo 'Bonne réponse ! Bravo ! ';
}
else {
echo 'Mauvaise Réponse ! La bonne réponse était Marseille';
}
}
else { ?>
<form method="post" action="quizz.php">


Votre pseudo :

Quel est l'équipe la plus forte de Ligue 1 ?

<label>Marseille</label>

<label>Paris</label>

<label>Bordeaux</label>




<?php } ?>

Merci quand même ;)
3
mcjoedassin Messages postés 196 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 2 septembre 2005
3 août 2005 à 20:00
pourquoi le champs value est identique ? ça ne peut pas marcher comme ça !
0
cs_Dave73 Messages postés 25 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 10 août 2005
3 août 2005 à 20:14
Oups, oublier de corriger.
Même en changeant, ça ne marche toujours pas
0
irkiouak Messages postés 68 Date d'inscription mardi 21 novembre 2000 Statut Membre Dernière intervention 10 octobre 2006
3 août 2005 à 20:57
Bonjour Dave,

pas de panique, tu peux faire comme suit:
tu vas ajouter un champ hidden nommé 'q1' ou tu vas mettre la valeur du boutton radio choisi lors du click sur (lors du choix de ce bouton).

parlant programmation:

<form method="post" action="quizz.php">

Votre pseudo :

Quel est l'équipe la plus forte de Ligue 1 ?

<label>Marseille</label>

<label>Paris</label>

<label>Bordeaux</label>

Dis moi si ça ira bien ..

Sympa developpeur ;-) http://pluscool.site.voila.fr
0

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

Posez votre question
cs_Dave73 Messages postés 25 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 10 août 2005
3 août 2005 à 21:47
Bonjour,

Je testerais ça demain, mais n'y a-t-il pas moyen de faire ça sans javascript ?
J'ai peur que mes visiteurs le désactive.

Merci irkiouak pour tes posts faciles de compréhension ;)
0
irkiouak Messages postés 68 Date d'inscription mardi 21 novembre 2000 Statut Membre Dernière intervention 10 octobre 2006
4 août 2005 à 11:40
Félicitation donc Dave73 :-)

je voie pas le changement que t'as apporté à ton premier code : la condition if ($_POST['radioq1'] = 'Marseille') existe toujours, or c'est là où résidait ton problème.

Sympa developpeur ;-) http://pluscool.site.voila.fr
0
cs_Dave73 Messages postés 25 Date d'inscription jeudi 5 mai 2005 Statut Membre Dernière intervention 10 août 2005
4 août 2005 à 17:28
Oups, je suis vraiment trop maladroit.

C'est que le signe '=' dans le if() donnait une valeur à $_POST

Pour régler ce problème, il faut remplacer par
0
irkiouak Messages postés 68 Date d'inscription mardi 21 novembre 2000 Statut Membre Dernière intervention 10 octobre 2006
4 août 2005 à 18:25
OUUUP, je suis encore plus maladroit, je l'ai pas du tout remarqué !!

Sympa developpeur ;-) http://pluscool.site.voila.fr
0
Rejoignez-nous