Page 1 sur 1

Récupérer des variables générées dans un formulaire

Posté : 20 févr. 2012, 12:14
par tintin
Bonjour,

Je suis en train de réaliser un qcm (qcm.php) qui s'autoappelle en générant des variables reponse1, reponse2, etc.
Le problème se pose quand je souhaite récupérer les valeurs prises par ces mêmes variables (voir la ligne commentée NE FONCTIONNE PAS !!!!!). Ma génération de variables semble mauvaise mais je ne vois pas où.

Merci pour votre aide.
$idSujet = $_SESSION['idSujet'];
if ($_SESSION['qcmValide']=='non')
	{
	if (!isset($_POST['reponse1']))
		{
		// On affiche le qcm
		}
	else
		{$_SESSION['qcmValide']='oui';
		$select = "SELECT * FROM qcm_questions WHERE `id_theme` = $idSujet";
		$req =mysql_query($select,$link) or die ('Erreur :'.mysql_errno().mysql_error());
		$nb_questions = mysql_num_rows($req);
		
		if ($nb_questions)
			{	// ôter après débug
			$i=0;
			$Bonne_reponse=0;
			while ($nb_questions=mysql_fetch_array($req))
				{
				$i++;
				$_SESSION['reponse[$i]'] = $_POST["'reponse".$i."'"];	// NE FONCTIONNE PAS !!!!!
				}
			}

		}
	}
	{echo "<form method=\"post\" action =\"qcm.php\" NAME=\"questionnaire\">";}
	$select = "SELECT * FROM qcm_questions WHERE id_theme=$idSujet";
	$result =mysql_query($select,$link) or die ('Erreur :'.mysql_errno().mysql_error());
	$rows = mysql_num_rows($result);
	if (isset($_GET['idSujet']))
		{
		$_SESSION['idSujet']=$_GET['idSujet'];
		}
		
	// Comptabilisation des enregistrements
		if ($rows) {
			$i=0;
			while ($rows=mysql_fetch_array($result))
				{
				$i++;
				echo '<input TYPE="RADIO" NAME="reponse'.$i.'" VALUE="A">'.$rows['choix1']."\n";}
				}}

	echo '</form>';

Re: Récupérer des variables générées dans un formulaire

Posté : 20 févr. 2012, 12:23
par Thibaud C
$_POST["'reponse".$i."'"];

tu mets beaucoup de cotes la, je pense que le problème viens de la :

Essaie avec un simple


$_POST["reponse".$i];

Re: Récupérer des variables générées dans un formulaire

Posté : 21 févr. 2012, 09:56
par tintin
Bonjour à tous,

Merci beaucoup Thibaud, ça fonctionne en effet, c'était un peu compliqué et peu efficace. Je clos cette discussion.
tintin