Passer plusieur groupes b. radios avec $post

Résolu/Fermé
solicel - 1 oct. 2009 à 17:33
 solicel - 2 oct. 2009 à 15:55
Bonjour,
Bonjour,
Je me pense savoir récupérer la bouton radio sélectionnée quand il s'agit d'un nombre de lignes connu `a l'avance comme l'exemple suivant:
Code :

<input type="radio" name="nom" value="valeur1">
<input type="radio" name="nom" value="valeur2">
.
.
.

Et de l'autre coté on fait un :
Code :

$_POST[nom]

Mon problème est le suivant: j'ai besoin de mettre dans chaque ligne d'un tableau deux boutons oui et non, que je récupère après. Donc il faut que chaque deux boutons de même ligne aient un même nom, mais après comment pourrais-je récupérer toutes les valeurs sans savoir les nom des boutons?
J'aimerais bien avoir une solution similaire a celle des checkbox, la ou on met dans des tableaux, qu'on récupère après, comme dans cet exemple:
Code :

<?php echo "<INPUT TYPE=CHECKBOX NAME=\"option1[]\" value=\"val1\" >" ?></td>
<?php echo "<INPUT TYPE=CHECKBOX NAME=\"options2[]\" value=\"val2\" >" ?></td>

et après on fait un :
Code :

$options = $_GET['options'];
$options2 = $_GET['options2'];


Donc si vous voyez bien, je ne sais pas apriori ni le nombre de lignes (cad le nombre de groupes de boutons radios) ni les noms de ceux-ci. Donc comment je peux récupérer de l'autre coté les valeurs sélectionnés pour chaque lignes?
Code :

<form name='form' action="s0.php" method="POST" >

for($i=0; $i<$k; $i++)
{
<td width="100" align="center" ><?php echo $arr3[$i][1] ; ?> </td>
<td width="100" align="center"><?php echo $arr3[$i][2]; ?></td>
<td width="100" align="center"><?php echo $arr3[$i][3] ; ?></td>
<td width="100" align="center"><?php echo $arr3[$i][4]; ?></td>
<td width="100" align="center"><?php echo"<input type=\"radio\" name=\"$arr3[$i][0]\" value="yes">"?></td>
<td width="100" align="center"><?php echo"<input type=\"radio\" name=\"$arr3[$i][0]\" value="no"> " ?> </td>
}
</form>

S'il vous plait dites moi si ce n'est pas clair, et merci d'avance.
A voir également:

7 réponses

Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 144
1 oct. 2009 à 17:37
Bonjour,

Tu devrais faire une boucle en PHP qui te permettre de générer tes radios avec pour Id nom1, puis nom2, et ainsi de suite.
Et passez un champ caché avec le nombre de radio (la valeur finale de ton compteur).
1
Bonjour

Tu as des ' en trop
Attention, quand tu écris $_POST['t0'], l'indice ce n'est que to, les apostrophes ne sont que des délimiteurs
Alors que quand tu écris $name="'t".$i."'"; avec $i=0, $name contient aussi les apostrophes. C'est comme si ensuite tu faisais $_POST["'t0'"];
Il suffit donc de faire
$name='t'.$i;
ou
$name="t$i";
(les deux écritures sont équivalentes)
1
Merci beaucoup Autumn`Tears pour la réponse super rapide!
Je suis désolé mais mes connaissances sont un peu limitées comme je suis débutant au php.
Un champ caché c'est quelque chose comme ça:

<input type="hidden" name="n" value="$nombre_de_lignes" />

Et de l'autre coté je fais un :
$n=$_post['n'];

C'est ça?
0
Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 144
1 oct. 2009 à 17:48
le $_POST doit être en majuscules, en principe c'est bon sinon.
0

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

Posez votre question
Merci beaucoup Autumn`Tears, Ça marche!
Mais il y a encore un dernier soucis...
En fait j'ai réussis a envoyer chaque lignes, et la recevoir quand je tape le $_POST a la main, mais quand je met le $_POST dans la boucle, il ne les reconnais pas. Voici les détails:

Coté boutons radios:
<?php $name="t".$i.""; ?>

<tr>

<td width="100" align="center"><?php echo"<input type=\"radio\" name=\"$name\" value=\"val1\">
<td width="100" align="center"><?php echo"<input type=\"radio\" name=\"$name\" value=\"val2\">

De l'autre coté :
$_POST['t0'];
$_POST['t1'];
...

mache tres bien. Mais quand je fais un :
for($i=0;$i<=$n;$i++)
{
$name="'t".$i."'";
$_POST[$name];
}
Ça ne marche pas. Comment faire svp?
0
Ne me dites pas que ce n'est pas possible, sinon tout ce j'ai fait n'a pas de sens!
Alors, pas d'idées?
0
Ca marrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrche!!!!
Quel cauchemard, vraiment comme on dit : "la science est une lumière"
Merci beaucoup pour vous deux,
Autumn`Tears, et le père, vous êtes vraiment fantastiques.
Bonne continuation!
0