Fomulaire - boucle - récup d'info - PHP

Pillgrim -  
flokocha Messages postés 1519 Statut Membre -
Salut a tous !

j'ai un petit souci. Je fais une application de gestion de QCM en PHP.
Il y a donc un certain nombre de questions et pour chaque questions un certain nombre de réponses.

Ma démarche est la suivante : l'utilisateur rentre ses parametres (nb question, nb reponse ...)
Ensuite je boucle pour afficher les numéros et j'ai un des cases textes via un formulaires qui demandent à l'utilisateur de de rentrer les intitulés de questions et de réponses.

MAIS le pb c'est que comme c'est une boucle comment je fait pour récupérer le "name" pour ensuite inséré les intitulés dans ma base.
J'ai pensé à faire un bouton validé a chaque fois mais c'est lourd. Voici mon code :

<?
if (!isset($fait))
{
echo "<form action='index.php?page=ajout_param_qcm&fait=on ' method='post' name='form1' target='_parent'>";

$i = 1;
while ($i <= $nombrequestion)
{
echo "<tr><td>";
echo "<br> Question n°$i ";
echo "<input name='intituleqst' type='text' id='intituleqst999' size='50' maxlength='30'><br>";

for ($j = 1; $j <= $nombrereponse; $j++)
{
echo "<br> Réponse n°$j ";
echo "<input name='intitulerep$j' type='text' id='intitulerep999' size='50' maxlength='30'>";
}

echo "<br><br>";

$i++;
echo "</td>";
echo "<td>";
echo "<br><input type='submit' name='Submit' value='Valider'>";
echo "</td></tr>";
}
}
?>

le $fait c'était pour ensuite ne plus affiché les questions déjà entrées (via une requete qui compte ce qui est fait).

Merci de votre aide
A voir également:
  • Fomulaire - boucle - récup d'info - PHP
  • Crystal disk info - Télécharger - Informations & Diagnostic
  • Info pc - Guide
  • Wifi info view - Télécharger - Divers Réseau & Wi-Fi
  • Easy php - Télécharger - Divers Web & Internet
  • I-info - Télécharger - Médias et Actualité

8 réponses

flokocha Messages postés 1519 Statut Membre 281
 
Et bien avant ton submit tu insères un champ caché qui transmettra le $j final, et ensuite dans ton script de traitement tu refais une boucle de 1 à $j pour traiter tous les intitulerep$j.

Par contre je crois que pour que cela marche tu devra déclarer ta variable $j une première fois avant la boucle sinon elle ne sera pas reconnue en dehors de la boucle, dans ton premier script.
0
Pillgrim
 
Merci je tente de le faire.
Mais je ne vois pas pourquoi ca marcherai avec un type champ caché?
0
flokocha Messages postés 1519 Statut Membre 281
 
Ah alors je pense que je n'ai pas compris ton problème.

Ton insertion dans la base se fera dans un autre script ou dans celui-ci?
0
Pillgrim
 
Dans un autre.

Je pense voir ce que tu veux que je fasse mais c'est un peu flou.

Ca t'embeterai de me donner le script auquel tu penses?

Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Pillgrim
 
Mais en fait je pense que je peut le faire dans le meme, non?
0
flokocha Messages postés 1519 Statut Membre 281
 
Mais déjà cette ligne ne colle pas:
<form action='index.php?page=ajout_param_qcm&fait=on ' method='post' name='form1' target='_parent'>

Tu fais passer des variables via l'URL alors que tu utilises la méthode "post" !

De plus tu es obligé de donner un nom dynamique à tes questions comme tu l'as fait pour tes réponses, étant donné qu'elles se situent dans la boucle while. Je te conseillerais l'utilisation d'un tableau qui te permettra d'associer les réponses aux questions.
0
flokocha Messages postés 1519 Statut Membre 281
 
Sinon pour répondre à ta question tu peux effectivement le faire dans la même page en utilisant la condition $fait.
0
Pillgrim
 
Je sais que c'est pas tres logique mais en fait j'ai tjrs fait ca. Je met post et mes variables sont dans l'url. En fait je ne sais meme pas comment je ferai mes appli sans variables dans l'url.
0
flokocha Messages postés 1519 Statut Membre 281
 
C'est justement à ça que servent les champs cachés! ;)
0