Récupération de données d'un formulaire PHP/JavaScript
Résolu/Fermé
slefevre77
Messages postés
33
Date d'inscription
samedi 11 décembre 2021
Statut
Membre
Dernière intervention
14 janvier 2022
-
Modifié le 11 déc. 2021 à 10:21
jordane45 Messages postés 38471 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 2 mai 2025 - 13 déc. 2021 à 19:31
jordane45 Messages postés 38471 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 2 mai 2025 - 13 déc. 2021 à 19:31
A voir également:
- Récupérer les données d'un formulaire html en javascript
- Comment récupérer les messages supprimés sur whatsapp - Guide
- Comment récupérer un compte facebook piraté - Guide
- Formulaire de réclamation facebook - Guide
- Recuperer video youtube - Guide
- Supprimer les données de navigation - Guide
29 réponses
slefevre77
Messages postés
33
Date d'inscription
samedi 11 décembre 2021
Statut
Membre
Dernière intervention
14 janvier 2022
12 déc. 2021 à 22:16
12 déc. 2021 à 22:16
Mais aucune erreur quand je clique sur "Ajouter une ligne".
slefevre77
Messages postés
33
Date d'inscription
samedi 11 décembre 2021
Statut
Membre
Dernière intervention
14 janvier 2022
Modifié le 13 déc. 2021 à 07:22
Modifié le 13 déc. 2021 à 07:22
jordane45
Messages postés
38471
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
2 mai 2025
4 742
Modifié le 13 déc. 2021 à 09:33
Modifié le 13 déc. 2021 à 09:33
Tu as deux erreurs dans le js lignes 43 et 92 à corriger
jordane45
Messages postés
38471
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
2 mai 2025
4 742
13 déc. 2021 à 11:55
13 déc. 2021 à 11:55
Je viens d'aller voir ta page : https://bluray4.domunix.fr/formulaire.php
Je vois que ça marche maintenant..
Tout est bon.
Tu penseras à fermer la discussion.
Je vois que ça marche maintenant..
Tout est bon.
Tu penseras à fermer la discussion.
slefevre77
Messages postés
33
Date d'inscription
samedi 11 décembre 2021
Statut
Membre
Dernière intervention
14 janvier 2022
13 déc. 2021 à 13:32
13 déc. 2021 à 13:32
Bonjour,
Désolé, je suis en formation Oracle Administrateur toute la semaine, je vais pas tarder à reprendre.
Voici ce que j'ai modifié :
javascript.js :
Ce script pourra certainement servir à d'autres.
Merci beaucoup pour ton aide.
Sébastien
Désolé, je suis en formation Oracle Administrateur toute la semaine, je vais pas tarder à reprendre.
Voici ce que j'ai modifié :
javascript.js :
(function (){ var champs = [ "prenom", "nom", "date_de_naissance", "url_photo" ], ajouter_ligne = document.getElementById("ajouter_ligne"), table = document.getElementById("acteurs"), form = document.getElementById("form_acteurs"); ajouter_ligne.onclick = function (){ var i, supprimer, tbody = table.tBodies[0], ligne = tbody.insertRow(-1); function champ (name, value) { var t = document.createElement("input"); t.type = "text"; t.name = t.id = name +"[]"; t.value = value || ""; return t; } for (i = 0; i < champs.length; i++) { (ligne.insertCell(i)).appendChild(champ(champs[i])); } supprimer = document.createElement("button"); supprimer.type = "button"; supprimer.className = "del"; supprimer.innerHTML = "×"; supprimer.onclick = function (){ var tr = this.parentNode.parentNode; index = tr.sectionRowIndex; tbody.deleteRow(index); valider.disabled = false; modifier.disabled = true; }; i = ligne.insertCell(champs.length); i.className = "actions"; i.appendChild(supprimer); var n, nt, inputs, index; for (var n = 0, nt = tbody.rows.length; n < nt; n++) { inputs = tbody.rows[n].getElementsByTagName("input"); index = tbody.rows[n].sectionRowIndex; for (var nn = 0, ntn = inputs.length; nn < ntn; nn++) { inputs[nn].id = inputs[nn].name = inputs[nn].name.replace(/\[\d*\]$/, "["+index+"]"); } } }; })();
Ce script pourra certainement servir à d'autres.
Merci beaucoup pour ton aide.
Sébastien
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
slefevre77
Messages postés
33
Date d'inscription
samedi 11 décembre 2021
Statut
Membre
Dernière intervention
14 janvier 2022
13 déc. 2021 à 13:33
13 déc. 2021 à 13:33
Cela renvoi bien les variables du formulaire :
Valeurs contenues dans POST
array(7) { ["prenom"]=> array(2) { [0]=> string(10) "Sébastien" [1]=> string(5) "Nancy" } ["nom"]=> array(2) { [0]=> string(7) "DUPONT" [1]=> string(7) "DUPONT" } ["datenaissance"]=> array(1) { [0]=> string(10) "2021-12-15" } ["url"]=> array(1) { [0]=> string(13) "sebastien.jpg" } ["date_de_naissance"]=> array(1) { [1]=> string(10) "01/01/1981" } ["url_photo"]=> array(1) { [1]=> string(9) "nancy.jpg" } ["send_data"]=> string(0) "" }
Plus qu'à traiter cela!
Valeurs contenues dans POST
array(7) { ["prenom"]=> array(2) { [0]=> string(10) "Sébastien" [1]=> string(5) "Nancy" } ["nom"]=> array(2) { [0]=> string(7) "DUPONT" [1]=> string(7) "DUPONT" } ["datenaissance"]=> array(1) { [0]=> string(10) "2021-12-15" } ["url"]=> array(1) { [0]=> string(13) "sebastien.jpg" } ["date_de_naissance"]=> array(1) { [1]=> string(10) "01/01/1981" } ["url_photo"]=> array(1) { [1]=> string(9) "nancy.jpg" } ["send_data"]=> string(0) "" }
Plus qu'à traiter cela!
slefevre77
Messages postés
33
Date d'inscription
samedi 11 décembre 2021
Statut
Membre
Dernière intervention
14 janvier 2022
13 déc. 2021 à 18:34
13 déc. 2021 à 18:34
J'ai toujours un soucis, la première ligne vient du PHP, avec les variables :
et les lignes ajoutées viennent du javascript :
Comment modifier le javascript pour avoir 4 variables distinctes et pouvoir définir le type de variable, text ou date ?
Par avance merci,
Sébastien
<input type="text" name="prenom[]"> <input type="text" name="nom[]"> <input type="date" name="datenaissance[]"> <input type="text" name="url[]">
et les lignes ajoutées viennent du javascript :
var champs = [ "prenom", "nom", "date_de_naissance", "url_photo" ], function champ (name, value) { var t = document.createElement("input"); t.type = "date"; t.name = t.id = name +"[]"; t.value = value || ""; return t; } for (i = 0; i < champs.length; i++) { (ligne.insertCell(i)).appendChild(champ(champs[i])); }
Comment modifier le javascript pour avoir 4 variables distinctes et pouvoir définir le type de variable, text ou date ?
Par avance merci,
Sébastien
jordane45
Messages postés
38471
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
2 mai 2025
4 742
Modifié le 13 déc. 2021 à 19:22
Modifié le 13 déc. 2021 à 19:22
Déjà, tu peux virer les input que j'ai mis manuellement... pour ne garder que celles générées par ton JS
Ensuite, chaque variable est un array contenant les valeurs de chaque lignes
par exemple
Ensuite, chaque variable est un array contenant les valeurs de chaque lignes
par exemple
$prenom = !empty($_POST['prenom']) ? $_POST['prenom'] : null; foreach($prenoms as $ligne => $P ){ echo $ligne . " : " . $P . "<br>"; }
slefevre77
Messages postés
33
Date d'inscription
samedi 11 décembre 2021
Statut
Membre
Dernière intervention
14 janvier 2022
>
jordane45
Messages postés
38471
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
2 mai 2025
13 déc. 2021 à 18:47
13 déc. 2021 à 18:47
Oui, mais je préfère garder tes input, comme cela je n'ai pas besoin de cliquer sur ajouter pour avoir la première ligne.
Mon problème est que le champ "date_de_naissance" est au format "text" et non "date" dans le javascript.
C'est pour cela que je voudrais déclarer les variables séparément.
Mon problème est que le champ "date_de_naissance" est au format "text" et non "date" dans le javascript.
C'est pour cela que je voudrais déclarer les variables séparément.
jordane45
Messages postés
38471
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
2 mai 2025
4 742
>
slefevre77
Messages postés
33
Date d'inscription
samedi 11 décembre 2021
Statut
Membre
Dernière intervention
14 janvier 2022
13 déc. 2021 à 18:55
13 déc. 2021 à 18:55
Déjà, Dans les input que je t'ai donné, remets les mêmes "name" que ceux du JS
Pour le format date, dans ton JS également tu spécifier le "type" ( il existe le type="date" pour les dates )
Il y aurait pleins de façons de procéder ..
mais là, pour ton cas précis en allant au plus simple
Pour le format date, dans ton JS également tu spécifier le "type" ( il existe le type="date" pour les dates )
Il y aurait pleins de façons de procéder ..
mais là, pour ton cas précis en allant au plus simple
function champ (name, value) { var t = document.createElement("input"); t.type = name =='date_de_naissance' ? 'date' : "text"; t.name = t.id = name +"[]"; t.value = value || ""; return t; }
slefevre77
Messages postés
33
Date d'inscription
samedi 11 décembre 2021
Statut
Membre
Dernière intervention
14 janvier 2022
13 déc. 2021 à 19:01
13 déc. 2021 à 19:01
Tu es un chef !!!
C'est tout nickel, merci encore !
C'est tout nickel, merci encore !
slefevre77
Messages postés
33
Date d'inscription
samedi 11 décembre 2021
Statut
Membre
Dernière intervention
14 janvier 2022
Modifié le 13 déc. 2021 à 19:28
Modifié le 13 déc. 2021 à 19:28
sinon,
Cela ne fonctionne pas :
[Mon Dec 13 19:03:53.172035 2021] [proxy_fcgi:error] [pid 11175:tid 140657628804864] [client 192.168.1.112:54945] AH01071: Got error 'PHP message: PHP Parse error: syntax error, unexpected '$_POST' (T_VARIABLE) in /web/bluray4/ajout_formulaire.php on line 10', referer: https://bluray4.domunix.fr/formulaire.php
$prenom = !empty($_POST['prenom']) ? $_POST['prenom'] : null; foreach($prenom as $ligne => $P ){ echo $ligne . " : " . $P . "<br>"; }
Cela ne fonctionne pas :
[Mon Dec 13 19:03:53.172035 2021] [proxy_fcgi:error] [pid 11175:tid 140657628804864] [client 192.168.1.112:54945] AH01071: Got error 'PHP message: PHP Parse error: syntax error, unexpected '$_POST' (T_VARIABLE) in /web/bluray4/ajout_formulaire.php on line 10', referer: https://bluray4.domunix.fr/formulaire.php
slefevre77
Messages postés
33
Date d'inscription
samedi 11 décembre 2021
Statut
Membre
Dernière intervention
14 janvier 2022
13 déc. 2021 à 19:04
13 déc. 2021 à 19:04
J'abuse !!!
jordane45
Messages postés
38471
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
2 mai 2025
4 742
13 déc. 2021 à 19:23
13 déc. 2021 à 19:23
J'ai édité ton message pour y mettre la correction
Il manque un ?
Il manque un ?
$prenom = !empty($_POST['prenom'])
? $_POST['prenom'] : null;
slefevre77
Messages postés
33
Date d'inscription
samedi 11 décembre 2021
Statut
Membre
Dernière intervention
14 janvier 2022
13 déc. 2021 à 19:30
13 déc. 2021 à 19:30
Nickel, je vais m'amuser pour la suite.
Bonne soirée !!!
et un GRAND merci !
Bonne soirée !!!
et un GRAND merci !
jordane45
Messages postés
38471
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
2 mai 2025
4 742
13 déc. 2021 à 19:31
13 déc. 2021 à 19:31
Pense à marquer la discussion en résolue
et n'hésite pas à créer une nouvelle discussion sur le forum si tu rencontres de nouvelles difficultés.
et n'hésite pas à créer une nouvelle discussion sur le forum si tu rencontres de nouvelles difficultés.