Bonjour a tous,
J'ai 2 fichiers php que j'ai fais grace a des codes exemple que j'ai trouvé puis modifié pour que ca marche avec ma config, je me connect en mysqli_connect
comme l'exemple.
1 fichier. je récupère les données avec auto-complète (php,jquery,ajax), dans un form html, en format tableau.
Apres avoir choisis le nom depuis la case désigné a l'auto-complète le reste des cases affiche automatiquement le résultat.
2ème fichier. dans un form html,javascript, j'affiche dans chaque case une liste déroulante, après avoir valide je récupère les données pour les insérer dans ma
table.
Ce que je pensais faire c'est de récupérer chaque var du 1er script dans une variable php, qui sont les données existant dans la table, j'ai pas trouver comment faire.
d'avoir deux value et deux id dans mon form, pour afficher la la site déroulante, je ne pense pas que cela pourrais ce faire, si oui je ne sais pas comment.
pour la mise a jour , de récupérer le form après avoir cliqué sur 'mise a jour' de comparer entre les variables existante et les nouveaux, puis de mettre a jour juste les nouveaux.
Ce que je cherche a faire c'est de combiner les 2 fichiers, je m'explique:
d'avoir un form avec 3 boutons,
1 -> un bouton submit pour récupérer les données du form si le produits n'existe pas dans ma table, puis l’insérer.
2 -> un bouton mise a jour, après avoir afficher les données avec le auto-complète, si je dois faire une mise a jour, d'avoir la possibilité de choisir le juste
grâce a une liste déroulante, puis mettre a jour seulement les case qui on eu un changement.
3 -> un bouton reset du form, tous simple c'est déjà fais.
dans le 1er fichier:
le script du auto-complète
le form pour l'auto-complèteCode:<script type="text/javascript"> $(document).ready(function(){ $(document).on('keydown', '.username', function() { var id = this.id; var splitid = id.split('_'); var index = splitid[1]; $( '#'+id ).autocomplete({ source: function( request, response ) { $.ajax({ url: "getDetails.php", type: 'post', dataType: "json", data: { search: request.term,request:1 }, success: function( data ) { response( data ); } }); }, select: function (event, ui) { $(this).val(ui.item.label); // display the selected text var userid = ui.item.value; // selected id to input // AJAX $.ajax({ url: 'getDetails.php', type: 'post', data: {userid:userid,request:2}, dataType: 'json', success:function(response){ var len = response.length; if(len > 0){ var id = response[0]['ID']; var name = response[0]['product_number']; var categoriesname = response[0]['categories_name']; var totalstock = response[0]['total_stock']; document.getElementById('name_'+index).value = name; document.getElementById('categories_name_'+index).value = categoriesname; document.getElementById('total_stock_'+index).value = totalstock; } } }); return false; } }); }); }); </script>
dans le 2ème fichierCode HTML:<table class='tutorial-table' align='center';> <form class="form-style-9" action="" method="post"> <tr> <th>Unite en stock</th> <th>Categorie</th> <th>Numero de serie</th> <th>Nom du produit</th> </tr> <tr> <td><input type='number' class="totalstock" name="total_stock" id='total_stock_1' readonly></td> <td><input type='text' class="categoriesname" name="categories_name" id='categories_name_1' ></td> <td><input type='text' class="name" name="product_name" id='name_1' ></td> <td><input type='text' class="username" name="product_number" id='username_1' placeholder='הכנס שם מוצר'></td> </tr> <tr> <td></td> <td><input type="reset" class="align-right" name="submit2" value="clear form"></td> <td><input type="submit" class="align-right" name="update" value="mettre a jour"></td> <td><input type="submit" class="align-left" name="submit1" value="מוצר חדש"></td> </tr> </form> </table>
le script pour la liste déroulante
le form de la liste déroulanteCode:function outputValue(item) { document.getElementById('output').value = item.value; } $( function(){ $( "#dialog-message" ).dialog({ modal: true, buttons: { Ok: function() { $( this ).dialog( "close" ); } } }); }); </script>
Code HTML:<table class='tutorial-table' align='center';> <form class="form-style-9" action="" method="post"> <tr> <th>Unité en stock</th> </tr> <tr> <td> <?php echo "<label for='product_number'><select class='field-style field-split align-left' name='product_number' id='product_number_select' onChange='outputValue(this)'>"; echo "<option>choisis un produit:</option>"; foreach($results as $row) { echo "<option value='" . $row['product_number'] . "'>" . $row['product_name'] . "</option>"; } echo "</select></label>"; echo "<input type='hidden' id='output' name='output' readonly/>"; ?> </td> </tr> <tr> <td><input type="submit" value="affiche le resultat" style = "font-size:20px; float:right"></td> </tr> </form> </table>
-----