Récupération des variables avec méthode post
Résolu
gahmed
Messages postés
71
Date d'inscription
Statut
Membre
Dernière intervention
-
gahmed Messages postés 71 Date d'inscription Statut Membre Dernière intervention -
gahmed Messages postés 71 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Récupérer valeur variable powershell
- Recuperer message whatsapp supprimé - Guide
- Récupérer mon compte facebook désactivé - Guide
- Comment récupérer un compte facebook piraté - Guide
- Comment recuperer une video sur youtube - Guide
- Impossible de récupérer mon compte gmail - Guide
3 réponses
voir commentaires et exemple:
<html> <script language="javascript1.5"> function ajouterLigne() { var tableau = document.getElementById("tableau"); var ligne = tableau.insertRow(-1); var colonne1 = ligne.insertCell(0); colonne1.innerHTML += document.getElementById("lib").value; //la je ne vois pas ccomment ça peut rajouter une ligne ??, il faut rajouter un inpuit var colonne2 = ligne.insertCell(1); colonne2.innerHTML += document.getElementById("pu").value; var colonne3 = ligne.insertCell(2); colonne3.innerHTML += document.getElementById("qte").value; var colonne4 = ligne.insertCell(3); colonne4.innerHTML += colonne2.innerHTML * colonne3.innerHTML ; } </script> <form method="post" action="save.php"> <input type="text" name="lib" id="lib" /> <input type="text" name="pu" id="pu" /> <input type="text" name="qte" id="qte" /> <!-- plutot bizarre ce bouton il affiche Enregitrer alors que sa fonction est d'ajouter une ligne ?? --> <input type="button" onclick="ajouterLigne();" value="Enregistrer"/> <table id="tableau" border="1"> <thead> <tr> <th>Libelle</th> <th>Prix Unitaire</th> <th>Quantité</th> <th>Prix Total</th> </tr> </thead> <tbody> </tbody> </table> </form> </html> VOILA une solution <html> <head> <title>Insertion de lignes en JS</title> <?php / ?> <script type="text/javascript"> <!-- //init variables JS globales //i elle conserve sa valeur entre chaque appel de la fonction //c a d après le premier appel elle va passer à 1 etc... i=0; function create_champ(){ //on increment la variable globale i, numero de produit i++; // en JS on peut atteindre les elements de la page HTML par document.getElementById // creation de l'objet tableau avec lequeml on va travailler var obj_tableau=document.getElementById("tableau_produits"); //lecture des lignes du tableau actuel, JS le met dans un array var arrayLignes = obj_tableau.rows; //pour avoir le nombre de lignes, avec .length on a la taille de l'array var nbr_de_lignes=arrayLignes.length; //on insere une nouvelle ligne de tableau juste avant celle contenant le bouton var nouvelleLigne = obj_tableau.insertRow(nbr_de_lignes-1); //ensuite on remplit chacune des cellules <td></td> du tableau avec les input var colonne1=nouvelleLigne.insertCell(0); colonne1.innerHTML='<input type="text" name="lib_produit['+i+']" value="" />';; var colonne2=nouvelleLigne.insertCell(1); colonne2.innerHTML='<input type="text" name="prix_unit_produit['+i+']" value="" />'; var colonne3=nouvelleLigne.insertCell(2); colonne3.innerHTML='<input type="text" name="qte_produit['+i+']" value="" />'; var colonne4=nouvelleLigne.insertCell(3); colonne4.innerHTML='<input type="text" name="prix_total_produit['+i+']" value="" />'; //tu peux rajouter des colonnes, modifier le name, mais garde sa forme name="lib_produit['+i+']" //ainsi tu pourra facilement récuper par $_POST['lib_produit'] qui est un array, donc boucler pour insertion dans BDD } --> </script> </head> <body onload="javascript:create_champ();"> <!-- au chargement de la page on ajoute la premiere ligne produit --> <form name="form_ajaout_cde" method="post" action="save.php" > <table width="800" id="tableau_produits" > <tr> <th>Libelle</th> <th>Prix Unitaire</th> <th>Quantité</th> <th>Prix Total</th> </tr> <tr> <td colspan="4"> <input name="button" type="button" class="input2" onClick="javascript:create_champ()" value="Ajouter une ligne produit"> </td> </tr> <tr> <td colspan="4"> <input name="enregistrer" type="submit" class="input2" value="Enregistrer"> </td> </tr> </table> </form> </body> </html> et le fichier save.php <?php if(isset($_POST['enregistrer'])){ //on recupere les valeurs postées, les produits sont dans un array ex: $_POST['lib_produit'] est un array parce qu'on a mis dans les input un name de la forme lib_produit[i] //pour visualiser cela: (tu enlèves ça ensuite bien sur) echo '<pre>'; print_r($_POST); echo '</pre>'; $nb_produits=sizeof($_POST['lib_produit']); if( $nb_produits>0){ for($i=1; $i <= $nb_produits; $i++){ //par exemple avec un echo echo "Produit ".$i." Lib: ".$_POST['lib_produit'][$i]." px unit: ".$_POST['prix_unit_produit'][$i]." qte: ".$_POST['qte_produit'][$i]." prx total: ".$_POST['prix_total_produit'][$i]."<br />"; } } } ?>