Php - questionnaire - radio
Nivek Freedomsoul
-
Nivek Freedomsoul -
Nivek Freedomsoul -
Bonsoir,
Bon voilà j'ai mon code, qui , a partir de ma BDD affiche les questions, choix de réponses avec un type radio, tout ça dans une boucle
Par contre comme j'ai plusieurs question, j'ai plusieurs réponses,
Les name changent pour chaque question, et passe de:
name="question_1"
jusqu'à
name="question_x"
Mais pour les réponses, je n'arrive pas a les mémoriser , dans un array ?
Sur le même page, les réponses sont affichées lors de la validation.
Sachant donc que c'est dans une boucle, comment traiter chaque réponse !?
Merci d'avance pour l'aide apportée
Bon voilà j'ai mon code, qui , a partir de ma BDD affiche les questions, choix de réponses avec un type radio, tout ça dans une boucle
Par contre comme j'ai plusieurs question, j'ai plusieurs réponses,
Les name changent pour chaque question, et passe de:
name="question_1"
jusqu'à
name="question_x"
Mais pour les réponses, je n'arrive pas a les mémoriser , dans un array ?
Sur le même page, les réponses sont affichées lors de la validation.
$reponse["a"] = htmlspecialchars($_POST['question_']); // la variable $reponse prend la valeur choisit par l'utilisateur (lors de la séléction de sa réponse) $reponse = $reponse[$a]; $question = $donnees['question']; // Question $reponse_a = $donnees['reponse_a']; // Réponse a) $reponse_b = $donnees['reponse_b']; // Réponse b) $reponse_c = $donnees['reponse_c']; // Réponse c) <..code..> echo "<p class=\"reponse\">\n"; echo "<input type=\"hidden\" name=\"question_$a\" value=\"$no_reponse\" selected=\"selected\"/>\n"; echo "<!-- caché en temps normal mais affiché par défaut si rien n'a été sélectionné -->\n"; echo "<input type=\"radio\" name=\"question_$a\" id=\"reponse_$b\" value=\"$reponse_a\"/><label for=\"reponse_$b\"> a) $reponse_a</label><br>\n"; echo "<input type=\"radio\" name=\"question_$a\" id=\"reponse_$c\" value=\"$reponse_b\"/><label for=\"reponse_$c\"> b) $reponse_b</label><br>\n"; echo "<input type=\"radio\" name=\"question_$a\" id=\"reponse_$d\" value=\"$reponse_c\"/><label for=\"reponse_$d\"> c) $reponse_c</label><br>\n"; echo "</p>\n";
Sachant donc que c'est dans une boucle, comment traiter chaque réponse !?
Merci d'avance pour l'aide apportée
A voir également:
- Php - questionnaire - radio
- Radio française - Télécharger - Médias et Actualité
- Easy php - Télécharger - Divers Web & Internet
- Télécharger podcast radio france mp3 - Guide
- Expert php pinterest - Télécharger - Langages
- Écouter la radio freebox pop - Forum Freebox
2 réponses
Tu pourrais commencer en codant ton formulaire comme suit:
Ensuite, tu pourrais exploiter les données de ce formulaire de cette façon:
Le tableau $reponse contiendra ainsi toutes les réponses aux questions (si l'utilisateur a correctement répondu, on aura par exemple $reponse[1] sera une chaîne dont la valeur sera c.
<h3>Question 1 - Lequel de ces langages du Web s'exécute côté serveur ?</h3> <input type="radio" name="q_1" value="a" id="q_1_a" /> <label for="q_1_a">JavaScript</label> <br /> <input type="radio" name="q_1" value="b" id="q_2_b" /> <label for="q_1_b">CSS</label> <br /> <input type="radio" name="q_1" value="c" id="q_3_c" /> <label for="q_1_c">PHP</label> <br /> <input type="radio" name="q_1" value="d" id="q_4_d" /> <label for="q_1_d">HTML</label> <br /> <h3>Question 2 - Une autre question</h3> ...
Ensuite, tu pourrais exploiter les données de ce formulaire de cette façon:
<?php
$reponse = array();
for ($i=1 ; $i<=$nombre_de_champs ; $i++) {
$reponse[$i] = $_POST["q_$i"];
}
?>
Le tableau $reponse contiendra ainsi toutes les réponses aux questions (si l'utilisateur a correctement répondu, on aura par exemple $reponse[1] sera une chaîne dont la valeur sera c.
Toute a l'heure j'ai réussi a trouvé comment faire,
comme chaque réponse est vérifié une par une, c'est suffisant =)
Merci pour ton aide,
Mais le truc c'est que j'envoie les question, réponse dans ma BDD avec un page, et elles sont affiché automatiquement sur la page de question, c'était pour éviter justement de modifier la page html, là tout est automatisé =)
C'est vrai, je pensais à un array, mais comme je maitrise pas tellement..
Enfin, je vais tanter de m'y mettre !
Pour ton bout de code, j''étais parit sur ça au début, mais le truc c'est que me page, lors de la validation, donne la réponse choisit, et affiche la bonne réponse, d'ou les values avec la réponse ;)
$reponse = StripSlashes(htmlentities($_POST["question_$a"], ENT_QUOTES));
comme chaque réponse est vérifié une par une, c'est suffisant =)
Merci pour ton aide,
Mais le truc c'est que j'envoie les question, réponse dans ma BDD avec un page, et elles sont affiché automatiquement sur la page de question, c'était pour éviter justement de modifier la page html, là tout est automatisé =)
C'est vrai, je pensais à un array, mais comme je maitrise pas tellement..
Enfin, je vais tanter de m'y mettre !
Pour ton bout de code, j''étais parit sur ça au début, mais le truc c'est que me page, lors de la validation, donne la réponse choisit, et affiche la bonne réponse, d'ou les values avec la réponse ;)