Bonjour,

J'ai un problème assez étrange.
Techniquement mon programme est changé affiché des questions en fonction d'un id et on passe à la question suivante quand on clique sur l'un des choix.

Là où c'est étrange c'est que tout fonctionne sauf au niveau de l'url.

A la première question on a un id à 0 et quand on clique sur la question suivante on a la bonne question mais dans l'url l'id est toujours à 0. C'est seulement si on répond de nouveau à la question que l'id incrémente correctement.

Cela pourrait venir d'ou?


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<div class="type-question">
	                <p class="question">
	                  <?php
						//echo $_SESSION['questions'];
									if (!empty($_GET['id'])) {
											displayQuestions($_GET['id']);
										} else {
												displayQuestions();
 
										}
									/*	if (intval($_GET['indexQuestion'])< sizeof($_SESSION["question"])-1) {
        							$_SESSION["question"][intval($_GET['indexQuestion'])+1];
    							}*/
 
										?>
	                </p>
	              </div>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 if (!empty($_POST['choix'])) {
 
        $_GET['id']++;
 
        //quelque soit le choix, l'appel est toujours le même
        addReponse($_SESSION['id_utilisateur'],$_POST['sondage_en_cours'],
                        $_POST['question'],$_POST['choix']);
        echo $_GET['id'];
         header('Location :index.php?id='.$_GET['id']);
    } else {
 
        header('Location :index.php?id=0');
 
    }
[

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
function displayAddReponses($idQuestion = 0) {
 
 
	$query = 'SELECT * FROM sondage_questions WHERE id = (SELECT min(id) FROM sondage_questions WHERE id > :id )';
	$resultat = db()->prepare($query);
	$resultat->bindValue(':id',$idQuestion,PDO::PARAM_INT);
	$data = $resultat->execute();
	$nb_sondage = $resultat->rowCount();
	if (!$resultat->execute()) {
	 	echo '<br>ERREUR select ID ('.$idQuestion.') => v&eacute;rifier la DB';
  } else {
 
		if (!$nb_sondage == 0) {
 
 
			$donnees = $resultat->fetch();
 
				echo "<form method='post' class='bandeau' action = 'index.php?id=".$_GET['id']."'>";
				echo "<input type='hidden'  name = 'sondage_en_cours' value = '".$donnees['id']."'/>";
				echo "<input type='hidden'  name = 'question' value = '".$donnees['question']."'/>";
				echo "<input type = 'submit' name='choix' value = 'bon' class='bon'/>";
				echo "<input type = 'submit' name='choix' value = 'moyen' class='moyen'/>";
				echo "<input type = 'submit' name='choix' value = 'mauvais' class='mauvais'/>";
				echo "</form>";
 
 
 
		}