Problème pour recuperer les valeurs de form

Eléphanteau du PHP | 17 Messages

07 déc. 2011, 19:14

Bonjour,
J'ai une table avec 10 lignes. chaque rangée a trois colonnes. Colonne1 est le nom du produit, colonne2 est une liste déroulante avec des valeurs de 1à 10. Colonne3 est une case à cocher.
Lorsque la case est cochée je voudrais récupérer les valeurs de la rangée entière (nom du produit, quantité)
Quelqu'un peut-il m'aider comment puis-je faire cela?
Merci pour votre aide

Code : Tout sélectionner

<?php echo "<table id=serTable border=1 width=100%>"; echo "<tr>"; echo "<td>Nom de service</td>"; echo "<td>Quantité</td>"; echo "<td>Choix</td>"; echo "</tr>"; $servicenom = new Services(); $serviceListe = $servicenom->getAllServices(); foreach ($serviceListe as $service){ echo "<tr>"; echo "<input type=hidden name=serId value=".$service->serId.">"; echo "<td>" .$service->serTheme."</td>"; echo "<td>"; echo "<select name=qtySelectSer>"; for ($n=0; $n<11; $n++){ echo "<option value=qty>".$n."</option>"; } echo "<select>"; echo "</td>"; echo "<td><input type=checkbox name=choixSer[] value=" . $service->serId ."> </td>"; echo "</tr>"; } echo "</table>"; ?> </td>
Pour récupérer les valeurs

Code : Tout sélectionner

<?php if (isset($_POST['choixSer'])) { echo "Vous avez choisi service :"; for ($i = 0, $c = count($_POST['choixSer']); $i < $c; $i++) { echo "<br/><b>" . $_POST['choixSer'][$i] . "</b>"; echo "<br/><b>" . $_POST['qtySelectSer'] . "</b>"; echo "<br/><b>" . $_POST['qtySelectProd'] . "</b>"; echo "<br>"; } } ?>

J'ai toujour "0" comme quantité
Merci

Eléphanteau du PHP | 17 Messages

07 déc. 2011, 19:16

Je n'ai pas mis volontairement les déclarations de "form" etc...

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

07 déc. 2011, 19:21

Salut,

Dans la liste déroulante tu n'a pas zéro mais qty !
Le value ne doit pas être fixe c'est ce que tu va envoyer au script de traitement !
Utilisé donc la valeur de $i aussi pour le value.

De plus les attributs html doivent être délimité par des ".
Oui les navigateurs comprennent mais seulement un mot, le jour où tu va en mettre plus cela ne fonctionnera plus ;)



@+
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 17 Messages

07 déc. 2011, 19:48

Merci Moogli,
j'ai changé qty par $n, mais je récupère toujours le valeur de la dernière liste déroulant!
il ne récupères pas la valeur de la liste déroulant qui corresponds de checkbox :oops:

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

07 déc. 2011, 21:38

Heu ben notation tableau aussi pour le select histoire qu'il soit au même régime que les checkbox.

Parce que la au final tu a X liste avec le même y a que la dernière reçus qui reste (car écrase le reste).


@+
Il en faut peu pour être heureux ......

Eléphanteau du PHP | 17 Messages

07 déc. 2011, 22:33

peux tu me faire une petite exemple ou un lien pour un site de tuto. je suis vraiment confus

Eléphanteau du PHP | 17 Messages

08 déc. 2011, 21:09

any help??
merci

Eléphanteau du PHP | 17 Messages

09 déc. 2011, 19:53

#-o =P~

ViPHP
xTG
ViPHP | 7331 Messages

09 déc. 2011, 20:33

Tu trouverais pourtant la réponse dans n'importe quel cours de HTML sur les formulaires. :)
<form action="#" method="POST">
  <input type="text" name="monTableau[0]" />
  <input type="text" name="monTableau[1]" />
</form>