oui je voudrais récupérer l'id de toutes les questions et aprés les id des réponses suivant les questions !!
Donc au début de mon code je récupére l'id du sondage, je vérifie s'il y a des questions, si c'est le cas alors :
<?
$sql = "SELECT * FROM question where id_sondage ='$id_sondage' ORDER BY priorite ASC";
$req = mysql_query($sql);
while($valeur = mysql_fetch_array($req))
{
$titre_question = addslashes($valeur['titre_question']);
$id_question = $valeur['id_question'];
//Là ça m'affiche tous les titres des questions
echo'<u><p>'.$titre_question.'</p></u>';
$requete2 = "SELECT * FROM question WHERE id_sondage = '$id_sondage' AND titre_question = '$titre_question'";
$resultat = mysql_query($requete2) or die ('Erreur SQL : impossible d\'effectuer la requête : <br />'.$requete2);
$total = mysql_num_rows($resultat);
//Récupére la méthode de la question, si c'est des boutons radio, case a cocher...etc
if ($total)
{
while($val= mysql_fetch_array($resultat))
{
$methode = $val['methode'];
}
}
$requete2 = "SELECT * FROM reponse WHERE id_sondage = '$id_sondage' AND id_question = '$id_question'";
$resultat2 = mysql_query($requete2) or die ('Erreur SQL : impossible d\'effectuer la requête : <br />'.$requete2);
$total = mysql_num_rows($resultat2);
if ($total)
{
while($val= mysql_fetch_array($resultat2))
{
$id_reponse = $val['id_reponse'];
$id_question = $val['id_question'];
$id_sondage = $val['id_sondage'];
$intitule = $val['intitule'];
?>
<html>
<body>
<div align ="center">
<form action="envoyer_questionnaire.php" method="post" name="questionnaire">
<?
//suivant la méthode on affiche une zone texte, bouton radio...etc
switch ($methode)
{
case 'texte':
echo'<input type="text" name="text" size="40"/>';
echo'<p></p>';
break;
case 'textarea':
echo'<TEXTAREA name="textarea" rows=4 cols=40></TEXTAREA>';
echo'<p></p>';
break;
//Liste déroulante
case 'deroulante':
echo'<select name="liste">';
//je refais la requête sinon il m'affiche un liste déroulante pr chaque réponse
$requete2 = "SELECT * FROM reponse WHERE id_sondage = '$id_sondage' AND id_question = '$id_question'";
$resultat2 = mysql_query($requete2) or die ('Erreur SQL : impossible d\'effectuer la requête : <br />'.$requete2);
$total = mysql_num_rows($resultat2);
if ($total)
{
while($val= mysql_fetch_array($resultat2))
{
$intitule = $val['intitule'];
$id_reponse = $val['id_reponse'];
$id_questions = $val['id_question'];
// recupére l'id de la réponse mais affiche l'intitulé
echo '<option value="'.$id_reponse.'">'.$intitule;
}
}
echo'</select>';
break;
case 'radio':
echo'<input type="radio" name="radio">'.$intitule.'<br>';
break;
case 'checkbox':
echo'<input type="checkbox" name="checkbox">'.$intitule.'<br>';
break;
}//fin switch
}//fin while
}//fin du if
}//fin du premier while
//Permet de récupérer l'id du sondage, le titre du sondage et l'id de la réponse sélectionné dans les pages précédentes (je ne pense pas que ça soit bon !!!)
echo '<input type="hidden" name="id_sondage" value="'.$id_sondage.'">';
echo '<input type="hidden" name="id_question" value="'.$id_question.'">';
echo '<input type="hidden" name="id_reponse" value="'.$id_reponse.'">';
echo'<input class="boutonpale" type="submit" value="Valider">';
?>
</div>
</form>
</body>
</html>
Voilà donc ce code là marche.
De plus j'ai un autre petit probléme, lorqu'il y a plusieurs questions où il y a des boutons radios comme réponse.
Mes bouton radio ont tous le même nom, du coup je ne peux pas les différencier et en plus je ne peux choisir qu'un choix sur les plusieurs questions ! je nz vois pas trop comment faire pour mettrent des noms différent !