IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Tableau de données récupération dans $_POST


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2017
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2017
    Messages : 32
    Points : 23
    Points
    23
    Par défaut Tableau de données récupération dans $_POST
    Bonjour à toutes et à tous,

    je suis en galère avec Javascript et un formulaire a créer.
    J'ai réussi à obtenir le résultat suivant dans mon $_POST:
    1 tableau avec: 1 nom de machine et 1 utilisateur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Array
    (
        [nomMachine] => machine2
        [utilisateur] => 5678
    )
    Problème je ne récupère qu'une seule ligne (la dernière saisie dans mon formulaire).
    Comment récupérer un résultat de la sorte:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Array
    (
        [nomMachine1] => ....
        [utilisateur1] => ....
     
        [nomMachine2] => ....
        [utilisateur2] => ....
    )
    Si vous pouviez me dépanner je suis en galère

    Petite remarque:

    Cette solution trouvée est la plus compréhensible à mon niveau et la seule qui me donne un résultat parce que ce que je souhaite réaliser à la base c'est un formulaire dynamique exécutant ces fonctions:

    1) entrer le nom d'une machine
    2) ajouter x utilisateur sur cette machine (grâce à un bouton ajouter utilisateur)
    3) ajouter une autre machine (grâce à un bouton ajouter machine)
    4) ajouter x utilisateur sur cette nouvelle machine (grâce à un bouton ajouter utilisateur)

    en gros mon $_POST final j'aurais aimé qu'il ressemble à ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Array
    (
        [nomMachine1] => ....
           Array (
              [utilisateur1] => ....
              [utilisateur2] => ....
              .....)
     
        [nomMachine2] => ....
           Array (
              [utilisateur1] => ....
              [utilisateur2] => ....
              .....)
    )
    Est ce que c'est réalisable?

    Voici mon code actuel

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    <SCRIPT language="javascript">
     
        function addRow(tableID) {
     
            var table = document.getElementById(tableID);
     
            var rowCount = table.rows.length;
            var row = table.insertRow(rowCount);
     
            var colCount = table.rows[0].cells.length;
     
            for (var i = 0; i < colCount; i++) {
     
                var newcell = row.insertCell(i);
     
                newcell.innerHTML = table.rows[0].cells[i].innerHTML;
                //alert(newcell.childNodes);
                switch (newcell.childNodes[0].type) {
                    case "text":
                        newcell.childNodes[0].value = "";
                        break;
                    case "checkbox":
                        newcell.childNodes[0].checked = false;
                        break;
                    case "select-one":
                        newcell.childNodes[0].selectedIndex = 0;
                        break;
                }
            }
        }
     
        function deleteRow(tableID) {
            try {
                var table = document.getElementById(tableID);
                var rowCount = table.rows.length;
     
                for (var i = 0; i < rowCount; i++) {
                    var row = table.rows[i];
                    var chkbox = row.cells[0].childNodes[0];
                    if (null != chkbox && true == chkbox.checked) {
                        if (rowCount <= 1) {
                            alert("On ne peut pas supprimer toutes les lignes.");
                            break;
                        }
                        table.deleteRow(i);
                        rowCount--;
                        i--;
                    }
     
     
                }
            } catch (e) {
                alert(e);
            }
        }
     
     
    </SCRIPT>
    </HEAD>
    <BODY>
     
     
        <form name="myform" id="myform" method="post" action="./index.php?action=verif">
            <TABLE id="dataTable" width="350px" border="1">
                <TR>
                    <TD><INPUT type="checkbox" name="chk"/></TD>
                    <TD><INPUT type="text" name="nomMachine"/></TD>
                    <TD><INPUT type="text" name="utilisateur"/></TD>
                </TR>
            </TABLE>
            <INPUT type="button" value="Ajouter une ligne" onclick="addRow('dataTable')" />
            <INPUT type="button" value="Supprimer une ligne" onclick="deleteRow('dataTable')" />
            <INPUT type="submit" value="Valider"> <br>
        </form>
     
    </BODY>

  2. #2
    Membre émérite
    Avatar de badaze
    Homme Profil pro
    Chef de projets info
    Inscrit en
    Septembre 2002
    Messages
    1 412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets info
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 412
    Points : 2 522
    Points
    2 522
    Par défaut
    Il suffit de mettre des [] à tes input (sauf pour le checkbox qui sert à supprimer) pour que cela soit considéré comme un tableau.

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
                    <TD><INPUT type="checkbox" name="chk"/></TD>
                    <TD><INPUT type="text" name="nomMachine[]"/></TD>
                    <TD><INPUT type="text" name="utilisateur[]"/></TD>

    Nom : Capture20181104_002.JPG
Affichages : 52
Taille : 20,6 Ko

    $_POST

    Nom : Capture20181104_003.JPG
Affichages : 53
Taille : 26,5 Ko
    Cela ne sert à rien d'optimiser quelque chose qui ne fonctionne pas.

    Mon site : www.emmella.fr

    Je recherche le manuel de l'Olivetti Logos 80B.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2017
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2017
    Messages : 32
    Points : 23
    Points
    23
    Par défaut
    Merci beaucoup!!!!

    Punaise ce n'était pas grand chose mais ça avait son importance.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème de récupération de données String dans un tableau
    Par simonteb dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 08/07/2012, 17h21
  2. Réponses: 5
    Dernier message: 12/04/2011, 15h42
  3. Réponses: 3
    Dernier message: 27/08/2009, 21h15
  4. Réponses: 5
    Dernier message: 09/10/2008, 14h28
  5. [MySQL] Récupération données MySQL dans un tableau
    Par joebiloute202 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 20/08/2008, 12h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo