Jean-jacque 0 Posted April 11, 2020 (edited) Bonsoir, Je viens vers vous afin que, je l'espère, quelqu'un puisse m'aider sur un point. Je suis en train de créer un module, dans la configuration de celui-ci, il y a une liste qui va reprendre les magasins actifs et les employés. Je récupère donc chaque magasin et pour chaque magasin j'ai mis en place un select afin de faciliter le choix pour l'administrateur. Le problème que j'ai, actuellement si je tente de récupérer les informations (via un dump du POST par exemple), j'arrive uniquement à récupérer la dernière ligne. <form role="form" action="#" method="POST" id="parameter_form" name="parameter_form"> <div class="table-responsive-row clearfix"> <table id="table-employee" class="table employee"> <thead> <tr class="nodrag nodrop"> <th class=""> <span class="title_box active"> {l s='#' mod='employeeshop'} </span> </th> <th class=""> <span class="title_box"> {l s='shop' mod='employeeshop'} </span> </th> <th class=""> <span class="title_box"> {l s='employee' mod='employeeshop'} </span> </th> </tr> {foreach from=$stores item=store} <tr> <label class="control-label col-lg-3" for="SHOP"> <td id="SHOP">{$store.id_store}</td> </label> <td>{$store.name}</td> <td> <select id="employee_select" name="employee_select"> <option selected="selected">{l s='Select an employee' mod='employeeshop'}</option> {foreach from=$employees item=employee} <option value="{$store.id_store}-{$employee.id_employee}">{$employee.lastname} {$employee.firstname}</option> {/foreach} </select> </td> </tr> {/foreach} </thead> </table> </div> <div class="panel-footer"> <div class="btn-group pull-right"> <button name="submitParameters" id="submitParameters" type="submit" class="btn btn-default"> <i class="process-icon-save"></i> {l s='Save' mod='employeeshop'} </button> </div> </div> </form> En espérant que vous saurez voir cela et m'éclairer de vos lumières. Merci d'avance ! Edited April 12, 2020 by Jean-jacque (see edit history) Share this post Link to post Share on other sites
Mediacom87 1,287 Posted April 12, 2020 Bonjour, j'ai rien compris mais déjà on va rappeler une règle de base du développement html ... un id est unqiue donc mettre des id dans un foreach est une aberration à proscrire de toute urgence. après les donénes tranmsies sont basées sur le name des input donc on va bosser dessus et pour simplement récupérer l'employé d'un store on doit le faire facielment en définissant le name su select. {foreach from=$stores item=store} <tr> <td>{$store.id_store}</td> <td>{$store.name}</td> <td> <select name="employee_select[{$store.id_store}]"> <option selected="selected">{l s='Select an employee' mod='employeeshop'}</option> {foreach from=$employees item=employee} <option value="{$employee.id_employee}">{$employee.lastname} {$employee.firstname}</option> {/foreach} </select> </td> </tr> {/foreach} ainsi la récupération est plus simple. Share this post Link to post Share on other sites
Jean-jacque 0 Posted April 12, 2020 Bonjour @Mediacom87, Tout d'abord merci pour votre réponse. Et désolé de l'explication pas très claire. Effectivement, un énorme Mea Culpa pour les id, à force de vérifier des choses et de faire des tests, je suis arrivé à faire des erreurs aussi grossières... Un énorme merci, car effectivement en voyant votre réponse, la logique est totalement compréhensible (le name du select avec l'id_store), et la récupération du Post peut se faire correctement. Désolé encore pour les fautes grossières qui ont dû faire saigner des yeux dès le matin 😂 Share this post Link to post Share on other sites
Mediacom87 1,287 Posted April 12, 2020 pas de soucis, on est là aussi pour apprendre, mais il est vrai que c'est difficile de savoir le niveau de compréhension possible lorsque l'on modifie un code d'autrui. J’espère avoir pu répondre à votre besoin et vous avoir aidé à acquérir une nouvelle réflexion sur vos prochains développements. Share this post Link to post Share on other sites
doekia 1,499 Posted April 12, 2020 Non seulement les id, mais les name des champs doivent être unique si tu veux obtenir leurs valeurs dans le post Share this post Link to post Share on other sites