Recuperer le nom d'un bouton submit

Répondre
gug
le 26/02/2005 à 22:14
gug
Bonjour,

Alors voila ce que je désire faire.

Tous dabors dans une étape ultérieur, je saisie des question. Ceux-ci sont numeroté de façon unique. Elle contienne également un libel qui est l'énnoncé de la question, et enfin la réponse a celle-ci.

Maintenant, je voudrait utiliser ces questions, mais de façon dynamique.
Donc je fait une requete qui utilise la table qui contient tous les enegistrement cocernant les questions. Et je les met dans un tableau.

Maintenant je crée une boucle qui va afficher tous les libels. Puis toujours dans cette boucle juste après les libels, je place un bouton submit. Il peut donc y avoir 6 questions avec 6 bouton submit, voire plus...
C'est maintenant que vient le probleme:
Je souhaite que ce nom soit dynamique, donc j'utilise mon tableau et utilise les numero.
Ainsi chaque bouton est unique.
Jusque la j'arrive la faire. En regardant le source de la page j'obtient bien tous cela.

Le but est maintenant de récuperer le bouton submit, mais seulement le nom, du submit, car il est unique.

Ensuite je n'aurait plus qu'a utiliser cela dans une requete avec un where pour afficher la réponse qui correspond a la question.

J'espère ne pas avoir été trop confu.

Donc mon seul probleme est de récuperer le nom du submit.
Après de très nombreuses tentatives, je ne récupère toujours que le premier enregistrement.
J'ai également utiliser dèriere le submit un hidden, mais cela ne marche toujours pas.

Je vais mieux commanter mon script:

<?php
mysql_select_db($Base_Nom,$Base_connection); //j'utlise un autre fichier qui contient mes connections que j'utilise avec require_once
$Quest = mysql_query($MaRequete, $Base_connection) or die (mysql_error());
$MonTableau= mysql_fetch_assoc($Quest);//Je stocke ma requete dans un tableau.

//--------------Cette partie est utiliser que quand je clique sur le submit.

$i=1;
$max=6;//nombre de question maxi
for($i;$i<=$max;$i++)
{
if(isset($_POST[$MonTableau['quest_numero'].$i]))
{
$Recuperation= $_POST[$MonTableau['quest_numero'].$i];
echo $Recuperation;//Ici donc cela devrait afficher le nom du bouton, different pour chaque submit.
}
}
?>
//-----------------------------------------
<html>

<head>
</head>

<body>

<form name="bib" action="" method="POST">

<?php

do //Boucle pour afficher le libel de la question, le bouton submit et le hidden. Ainsi j'affiche en dynamique mes questions.
Il faut donc que je récupère le submit ou le hidden.
J'obtient un résultat, mais cela n'affiche que le premier enregistrement. Il faudrait par exemple si le nom du submit est deux que je récupère et affiche 2, pour le nom du submit si c'est 3...
{
echo $MonTableau['quest_libel']. "<input type=\"submit\" name=\"".$MonTableau['quest_numero']."\" value=\"".$MonTableau['quest_numero']."\"><br><input type=\"hidden\" name=\"". $MonTableau['quest_numero']."\" value=\"".$MonTableau['quest_numero']."\">";
}
while($MonTableau= mysql_fetch_assoc($Quest));
?>


Voila, si vous pouvez m'aider, car je bloque depuis 3 jour dessus.

Merci d'avance.
Et merci d'avoir prit la peine de vouloir m'aider.
anasha
le 26/02/2005 à 23:25
anasha
Alors si j'ai bien compri tu faire une truc qui ressemble à ca :

question 1 - bouton 1
question 2 - bouton 2
question 3 - bouton 3
question 4 - bouton 4
...

clik sur bouton 3 => envoi vers page avec requete genre :
$requete = SELECT champ FROM table WHERE bouton=bouton 3

C'est ça ou jme goure ??
Anasha [php-kiche-nomore]
LA GLOBULE
le 26/02/2005 à 23:30
LA GLOBULE
Regarde le dernier cours de ce site : le cours sur les variables globales.
Y'a un exemple ou un formulaire est généré à la volée avec x champs, et à la soumission finale, la valeur des x champs est récupérée.
gug
le 27/02/2005 à 14:23
gug
Ouai Anasha c'est exactement cela.

Je recupère bien le nom, mais je bloque sur le fait que quelque soit le bouton je ne récupère que le premier enregistrement.

J'ai pourtant créer dans la reception en mode POST, une boucle for avec une incrementation, mais cela ne marche toujours pas.

Mon porjet est un peu bizare, mais de cette façon, je n'écris que très peu en dure dnasle programme, je laisse inais la plus grande souplesse pour l'utilisation.

En tous cas je vous remercie de m'avoir répondu, je désespéré un peu, mais vos réponse me redonne la peche pour m'accorcher a faire marcher tous cela.
Merci Globule pour ton lien, je vais voir si cela corespond a ce que je fait.

Merci
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours