Récupération de données d'un formulaire PHP/JavaScript
Résolu
slefevre77
Messages postés
33
Date d'inscription
Statut
Membre
Dernière intervention
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
A voir également:
- Récupérer les données d'un formulaire html en javascript
- Whatsapp formulaire opposition - Guide
- Fuite données maif - Guide
- Comment récupérer les messages supprimés sur whatsapp - Guide
- Formulaire de réclamation facebook - Guide
- Comment récupérer un compte facebook piraté - Guide
29 réponses
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.
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
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!
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
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>"; }
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; }
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