Ajout/suppression d'un champ input type -> Problème de récupération du tableau $ [Résolu]

Messages postés
15
Date d'inscription
lundi 20 juillet 2009
Statut
Membre
Dernière intervention
7 octobre 2009
- - Dernière réponse : alaska749
Messages postés
15
Date d'inscription
lundi 20 juillet 2009
Statut
Membre
Dernière intervention
7 octobre 2009
- 22 août 2009 à 16:29
Bonjour, j'ai récupérer le script js ci-dessous permettant d'ajouter ou supprimer des input type text... ce script fonctionnne très bien mais je n'arrive malheureusement pas a récupérer les valeurs des inputs types créés (du à mon manque de connaissance). Ma difficulté est liée au faite que les boutons - et + fait que le tableau passé en post peut ne pas être régulier ([0][1][2]...) mais plutôt être de ce type (en imaginant que l'utilisateur a supprimer et ajouter q.q éléments)
[AutreNo] => Array
(
[0] => 1er champ
[4] => n°4
[5] => n°5
[7] => n°7
[8] => n°8
[9] => n°9
)

Voici le bout de code:
<html>
<head>
<title></title>
<script language="javascript">
var Compteur = 0;
//--------------------------
function Delete_Ligne( obj_){
  var Parent;
  var Obj = obj_;
  if( Obj){
    //-- tant que pas la balise <TR>
    do{
       Obj = Obj.parentNode;
    }while( Obj.tagName != "TR")
    //-- Recup du parent
    Parent = Obj.parentNode;
    //-- Suppression de la ligne
    if( Parent){
      Parent.deleteRow( Obj.rowIndex)
    }
  }
}
//----------------------
function Create_Ligne(i){
  //-- compteur pour le FUN
  Compteur++;
  //-- Get objet tableau
  var O_Table = document.getElementById('T_INSERT');
  //-- Get nombre de ligne du tableau
  var NbrLigne = O_Table.rows.length;
  //-- Position d'insertion
  var Pos = NbrLigne;
  //-- Insertion d'une ligne
  O_Row  = O_Table.insertRow( Pos);
  //-- Insertion d'une cellule
  O_Cell = O_Row.insertCell(-1);
  O_Cell.innerHTML = '';
  //-- Insertion d'une autre cellule
  O_Cell = O_Row.insertCell(-1);
  O_Cell.innerHTML = '';
}
</script>
</head>

Enseignants responsables |
 |


</html>


Ma question... comment récupérer ce tableau $_POST désordonné ?? Ou comment modifier le script ci-dessus afin que le tableau envoyé aie tous ces éléments dans l'ordre ? Autre idée?
Un grand M E R C I pour votre aide ... ca fait tout le matin que je galère la dessus
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
4934
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
7
3
Merci
Bonjour,

>>comment récupérer ce tableau $_POST désordonné ??
déjà, changer : ...name="AutreNo['+Compteur+']"...
mettez le même name, certes avec des crochets
...name="AutreNo[]"...
coté javascript on gère
document.name_formulaire["AutreNo[]"].length et
document.name_formulaire["AutreNo[]"][index]
coté php, $_POST['AutreNo'] est un array

bon, après, l'ajout/suppressions me semblent
un poil compliqué, faudrait voir quoi, si ça
baigne, après tout...

Cordialement [mon Site] [M'écrire] Bul

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 193 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Bul3
Messages postés
15
Date d'inscription
lundi 20 juillet 2009
Statut
Membre
Dernière intervention
7 octobre 2009
0
Merci
Mince ... c'est le code d'origine ... que je vous ai envoyé !
Voici celui dont je faisais référence:
<html>
<head>
<title></title>
<script language="javascript">
var Compteur = 0;
var Nb_tot = 0;
//--------------------------
function Delete_Ligne( obj_){
  var Parent;
  var Obj = obj_;
  if( Obj){
    //-- tant que pas la balise <TR>
    do{
       Obj = Obj.parentNode;
    }while( Obj.tagName != "TR")
    //-- Recup du parent
    Parent = Obj.parentNode;
    //-- Suppression de la ligne
    if( Parent){
      Parent.deleteRow( Obj.rowIndex)
      --Nb_tot;
}
  }
}
//----------------------
function Create_Ligne(i){
  //-- compteur

if (Nb_tot <5){ // pour limiter le nb de champ texte à 5 max
  //-- Get objet tableau
  var O_Table = document.getElementById('T_INSERT');
  //-- Get nombre de ligne du tableau
  var NbrLigne = O_Table.rows.length;
  //-- Position d'insertion
  var Pos = NbrLigne;
  //-- Insertion d'une ligne
  O_Row  = O_Table.insertRow( Pos);
  //-- Insertion d'une cellule
  Compteur++;
  Nb_tot++;
  //-- Insertion d'une autre cellule
  O_Cell = O_Row.insertCell(0);
  O_Cell.innerHTML = 'Autre N°:';
  O_Cell = O_Row.insertCell(1);
  O_Cell.innerHTML = '';
  O_Cell = O_Row.insertCell(2);
  O_Cell.innerHTML = '';
}
}
</script>
</head>

<form method="post" action="testjs.php">
Autre N°:,
,


  

</html>


Merci
Commenter la réponse de alaska749
Messages postés
15
Date d'inscription
lundi 20 juillet 2009
Statut
Membre
Dernière intervention
7 octobre 2009
0
Merci
Excellente suggestion !, cela me permet de récupérer en php un tableau avec des no d'élément se suivant...tel que:
[AutreNo] => Array
(
[0] =>
[1] => n°3
[2] => n°5
[3] => n°6
[4] => n°7
[5] => n°9
)

Bon, pour la compléxité du script... je n'ai pas trouver mieux...mais si vous avez moins compliquez pour la même fonctionnalité, je suis preneur
Encore merci !
Commenter la réponse de alaska749