Création formulaire avec boutons + pour ajout ligne
Fermé
pilten
Messages postés
41
Date d'inscription
mardi 20 février 2007
Statut
Membre
Dernière intervention
19 octobre 2012
-
11 oct. 2012 à 13:43
Anonymous - 8 déc. 2015 à 22:13
Anonymous - 8 déc. 2015 à 22:13
A voir également:
- Création formulaire avec boutons + pour ajout ligne
- Media creation tool - Télécharger - Systèmes d'exploitation
- Ajout rapide snap ✓ - Forum Snapchat
- Creation compte gmail - Guide
- Apparaitre hors ligne whatsapp - Guide
- Aller à la ligne excel - Guide
1 réponse
Dj Nam
Messages postés
327
Date d'inscription
mardi 9 octobre 2007
Statut
Membre
Dernière intervention
31 janvier 2014
41
13 oct. 2012 à 08:22
13 oct. 2012 à 08:22
Bonjour,
Avant tout et par soucis de confort, je te conseil de jeter un oeil du coté de jQuery (particulièrement la fonction .clone()) qui te simplifiera la vie.
Pour l'ajout de la ligne, l'insertion de PHP au milieu de javascript est complètement inutile, pour plusieurs raison, déjà, parce que, première régle de base : PHP est un langage coté serveur, alors que JS se passe coté client, ce qui veut dire que lors de l'affichage de ta page, le PHP est traité pour être converti en un résultat HTML, et le JS lui n'est exécuté qu'après que la page soit affichée. Donc là, le PHP ne sera jamais exécuté, par contre il risque d'être affiché sur la page.
La solution serait simplement de récupérer le code HTML de ta dernière ligne, et de le réinsérer à la suite ce qui, si tu utilise un tableau et jQuery se traduirait simplement par ceci :
Pour les attributs "name", plutôt que de donner un name différent à chaque ligne, la meilleure solution serait de donner un tableau à toute tes lignes, comme ceci :
La première ligne aura les valeurs suivantes : $_POST['produit'][0] et $_POST['prix'][0]
La seconde : $_POST['produit'][1] et $_POST['prix'][1]
Et ainsi de suite (il ne te reste donc qu'à boucler sur les variables POST pour récupérer les infos.)
Avant tout et par soucis de confort, je te conseil de jeter un oeil du coté de jQuery (particulièrement la fonction .clone()) qui te simplifiera la vie.
Pour l'ajout de la ligne, l'insertion de PHP au milieu de javascript est complètement inutile, pour plusieurs raison, déjà, parce que, première régle de base : PHP est un langage coté serveur, alors que JS se passe coté client, ce qui veut dire que lors de l'affichage de ta page, le PHP est traité pour être converti en un résultat HTML, et le JS lui n'est exécuté qu'après que la page soit affichée. Donc là, le PHP ne sera jamais exécuté, par contre il risque d'être affiché sur la page.
La solution serait simplement de récupérer le code HTML de ta dernière ligne, et de le réinsérer à la suite ce qui, si tu utilise un tableau et jQuery se traduirait simplement par ceci :
var html = $('#matable tr:last').html();
$('#matable').append('<tr>'+html+'</tr>'); et le tour est joué.
Pour les attributs "name", plutôt que de donner un name différent à chaque ligne, la meilleure solution serait de donner un tableau à toute tes lignes, comme ceci :
<input type="text" name="prix[]" value="" size="5" />Le fait de mettre deux crochets à la fin du name permet de récupérer un tableau. Ainsi en php tu aura quelque chose comme ca :
La première ligne aura les valeurs suivantes : $_POST['produit'][0] et $_POST['prix'][0]
La seconde : $_POST['produit'][1] et $_POST['prix'][1]
Et ainsi de suite (il ne te reste donc qu'à boucler sur les variables POST pour récupérer les infos.)
8 déc. 2015 à 22:13
Merci à toi Dj Nam