8768 sujets

Développement web côté serveur, CMS

Bonjour,

J'ai un souci avec mon code. En effet, j'aimerais récupérer la valeur exacte d'un input de type hidden qui se trouve dans une boucle (foreach par exemple). Mon input récupère plusieurs valeurs, dans un même formulaire j'aimerais, en fonction du choix d'une liste déroulante (champ select), récupérer la valeur de mon champ id qui correspond à l'id (materiel_id) de la table materiels équivalent à l'id (type_materiel_id) de la table type_materiels choisie dans le champ select.


$sql = '
     SELECT * 
     FROM materiels mt
     INNER JOIN type_materiels tm
     ON tm.type_materiel_id = mt.type_materiel_id
';
$req = $db->prepare($sql);
$req->execute() or die(print_r($req->errorInfo()));


<form>
      <?php foreach ($req->fetchAll() as $row) { ?>
      <select>
           <option value="">Selectionner un matériel</option>
           <option value="<?=isset($row['type_materiel_id'])?$row['type_materiel_id']:'';?>"><?=isset($row['type_materiel_nom'])?$row['type_materiel_nom']:'';?>  </option>
      </select>
      <input type="submit" value="Envoyer">
      <input type="hidden" name="id" value="<?=isset($row['materiel_id'])?$row['materiel_id']:'';?>">
      <?php } ?>
</form>


Merci pour votre aide !
Bonjour,

<input type="hidden" name="id[]" value="">


Tu récupéreras ainsi un tableau dans $_POST['id'].
Bonjour @loicbcn,

Merci d'avoir pris le temps de me répondre.
J'ai corrigé et ça marche !

Merci encore.

A bientôt !

Cdlt,
dinolam a écrit :
Bonjour,

J'ai un souci avec mon code. En effet, j'aimerais récupérer la valeur exacte d'un input de type hidden qui se trouve dans une boucle (foreach par exemple). Mon input récupère plusieurs valeurs, dans un même formulaire j'aimerais, en fonction du choix d'une liste déroulante (champ select), récupérer la valeur de mon champ id qui correspond à l'id (materiel_id) de la table materiels équivalent à l'id (type_materiel_id) de la table type_materiels choisie dans le champ select.


$sql = '
     SELECT * 
     FROM materiels mt
     INNER JOIN type_materiels tm
     ON tm.type_materiel_id = mt.type_materiel_id
';
$req = $db-&gt;prepare($sql);
$req-&gt;execute() or die(print_r($req-&gt;errorInfo()));


&lt;form&gt;
      &lt;?php foreach ($req-&gt;fetchAll() as $row) { ?&gt;
      &lt;select&gt;
           &lt;option value=""&gt;Selectionner un matériel&lt;/option&gt;
           &lt;option value="&lt;?=isset($row['type_materiel_id'])?$row['type_materiel_id']:'';?&gt;"&gt;&lt;?=isset($row['type_materiel_nom'])?$row['type_materiel_nom']:'';?&gt;  &lt;/option&gt;
      &lt;/select&gt;
      &lt;input type="submit" value="Envoyer"&gt;
      &lt;input type="hidden" name="id" value="&lt;?=isset($row['materiel_id'])?$row['materiel_id']:'';?&gt;"&gt;
      &lt;?php } ?&gt;
&lt;/form&gt;


Merci pour votre aide !