Rechercher : dans
Par :

[php]vider le contenu d'une variable

Dernière réponse le 28 jun 2007 à 10:36:22 bezourox, le 28 jun 2007 à 10:09:27 
 Signaler ce message aux modérateurs

Bonjour à tous .
voila j'ai un petit soucis sur un générateur de code html .

j'ai une premiere page ou l'utilisateur renseigne :

question 1 : input type text
reponse 1 : input type text
reponse 2 : input type text
reponse 3 : input type text

question 2 : input type text
reponse 1 : input type text
reponse 2 : input type text
reponse 3 : input type text

question 3 : input type text
reponse 1 : input type text
reponse 2 : input type text
reponse 3 : input type text


...

Puis un bouton submit qui renvoie à la page suivante .

La page suivante crée mon code html, et pour cela j'ai une boucle 2 boucles .
Voici le code :

for($i=1;$i<=$nombre_de_questions;$i++)
		{
			$question = $_POST['question'.$i];
			echo '<dt><h2><b>'.$i.'. '.$question.' </b></h2>';
			for($j=1;$j<=$nombre_de_reponses;$j++)
			{
				$rep = $_POST['reponse'.$j];
				echo '<dd><input type="radio" name="q'.$i.'" value="'.$j.'">'.$rep.'<br />';
			}
			
			echo '<br /><br />';
		}


Pour tester, je remplis tous mes inputs .
Je clique sur submit .
Le code de la page à générer s'affiche dans un textarea .
Je fais un copier coller du code et l'enregistre dans un fichier d'extension .php .
Je lance ce fichier sous firefox.
Voici le résultat :
résultat :

1. Le drapeau francais comporte :
on va pas au travail
on est frais comme un gardon
c'est chiant
caca qui fouette
normal


2. Vitel est il ?
on va pas au travail
on est frais comme un gardon
c'est chiant
caca qui fouette
normal


3. lendemain de fete ...
on va pas au travail
on est frais comme un gardon
c'est chiant
caca qui fouette
normal

Voila le soucis est que toutes les reponses aux questions sont les mêmes, et se sont les réponses de la dernière question .
Vous voyez quel est le soucis dans ma boucle ?
Perso je pense qu'il s'agit d'une histoire de vider le contenu de la variable avant de passer aux réponses de la question suivante .

Je suis tout ouis à vos suggestions .

PAR AVANCE , MERCI !
Configuration: Windows XP
Firefox 2.0.0.4

Meilleures réponses pour « [php]vider le contenu d'une variable » dans :
[PHP] Lister le contenu d'un répertoire VoirGrâce à PHP, il est possible d'afficher le contenu d'un répertoire et de ses sous-répertoires. Voici ci-dessous une fonction permettant de parcourir récursivement les répertoires et sous-répertoires et d'en afficher les fichiers : function...
[PHP] Notice: Undefined index: VoirSi vous utilisez les tableaux $_POST ou $_GET pour récupérer les variables de vos formulaires ou autres, il se peut que vous tombiez sur cette erreur: Notice: Undefined index 'champs du tableau' in 'chemin du fichier php en cours d'execution' on line...
[PHP] Les ressemblances à ne pas confondre VoirIntroduction Concaténation ou paramètres ? Guillemets/Apostrophe Structure require/include isset vs empty htmlentities ou htmlspecialchars ? Nombre de signes égal Introduction Cette astuce présente plusieurs fonction ou astuces en...
PHP - Les variables VoirConcept de variable avec PHP Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage PHP peuvent être de trois...
PHP - Bases de données VoirPhp permet un interfaçage très simple avec un grand nombre de bases de données. Lorsqu'une base de données n'est pas directement supportée par Php, il est possible d'utiliser un driver ODBC, pilote standard pour communiquer avec les bases de...
PHP - Récupération de données VoirPHP rend très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML. Création d'un formulaire Grâce à la balise FORM du langage HTML, il est très simple de créer des formulaires comprenant : des champs de saisie des...

1

PeJo, le 28 jun 2007 à 10:28:39
  • +1

Salut,
je pense qu'il y à un problème avec le passage de tes variables.
Le problème est que pour question1 tu as les variables réponses 1, 2 et3.
Pour question 2 tu as réponses 1, 2 et 3.
Idem pour la question 3.
Quand tu fais submit il envoit les valeurs réponses1,2 et 3. Cependant ces valeurs ne peuvent correspondrent qu'aux dernières réponses car tu as écrasé les valeurs des deux premières.
Compte tenu de la rédaction de ta deuxième boucle for, le $j s'incrémente avec jusqu'au nombre de réponses. Essaye donc de faire ainsi :
question 1 | réponses 1, 2 et 3
question 2 | réponses 4, 5 et 6
question 3 | réponses 7, 8 et 9

Voilà, bon courage.

Répondre à PeJo

2

sfel, le 28 jun 2007 à 10:35:55
  • +1

Bonjour,

ta seule erreur ne peut venir que de cette ligne

$rep = $_POST['reponse'.$j];


il faudrait presque que tu dises

$rep = $_POST['reponse'.$i$j];


ce qui donnerais comme nom a tes réponses, le numéro de la question, et de ta réponse.

fais voir une partie de ton code de ton formulaire, svp.

toutes tes réponses, ont pour nom reponse1
reponse2
reponse1
reponse2

ou reponse1-1
reponse1-2
reponse2-1
reponse2-3 L'ennemi est bête : il croît que c'est nous l'ennemi, alors que c'est lui !
GLOUGLOU ...

Répondre à sfel

3

 bezourox, le 28 jun 2007 à 10:36:22

Oki merci pour le conseil .
par contre ta solution ne va pas être pratique pour moi après .
je m'explique .
pour le moment je ne génere qu'un seul fichier, mais apres je souhaite aussi lorsque cette page est générée qu'une autre page soit générée, celle du programme de correction .
Ce programme de correction est déja créé et fonctionne sur le meme principe que la boucle du dessus .
en bref si me mec veut générer 20 questions avec 5 reponses possibles par questions, on atteint un total de 100 reponses :s
et pour les tester ... ca va être galère ...

enfin laisse tomber c'est un peu compliqué a t'expliquer , je vais essayer de me debrouiller :)

Répondre à bezourox
Collection CommentÇaMarche.net