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

Langage PHP Discussion :

Récuperé valeur de Plusieurs mutliselect [PHP 5.3]


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 71
    Points : 72
    Points
    72
    Par défaut Récuperé valeur de Plusieurs mutliselect
    Bonjour à tous

    J'essaie de récupérer des plusieurs donnée de plusieurs multiselect.

    Le nombre de multiselect ce trouvant sur la page formulaire n'est pas fix, il peux être unique ou en avec 10. J'essaie donc de faire un truc générique.


    Voici ce qu'affiche mon printr($_POST);

    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
     
    array(
        'datas' => array(
            '07fc5f5a3a972d46b372f0c58c1b037e' => array(
                '0' => 'Italien',
                '1' => 'Anglais',
            ),
            '65535d696c6979ea033358089246c7a5' => array(
                '0' => 'Russe',
                '1' => 'Allemand',
                '2' => 'Francais',
                '3' => 'Chinois',
            ),
        ),
        'cid' => '1',
    );



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
            foreach($_POST['datas'] as $selectValue){
    		      foreach($selectValue as $re){
                    echo $selectValue."->".$re."<br>";
    // insert into toto (titi , tata ) ($selectValue, $re)
                    }
    	     }
    M'affiche :
    Array->Italien
    Array->Anglais
    Array->Russe
    Array->Allemand
    Array->Francais
    Array->Chinois
    Donc je n'arrive pas a différencier les array.

    Cela doit être tout bête mais je sèche

    merci à vous

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 159
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 159
    Points : 8 338
    Points
    8 338
    Billets dans le blog
    17
    Par défaut
    Je dirais plutôt :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    foreach ( $_POST['datas'] as $select => $langues ) {
        echo '==== ', $select, ' ====<br>' ;
        foreach ( $langues as $index => $langue ) {
            echo $index, ' => ', $langue, '<br>' ;
        }
    }
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 71
    Points : 72
    Points
    72
    Par défaut
    Super, merci Seb

    Même dans mon cas je dirai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    foreach ( $_POST['datas'] as $select => $langues ) {
        echo '==== '. $select. ' ====<br>' ;
        foreach ( $langues as $index => $langue ) {
            echo $select.' => '. $langue. '<br>' ;
        }
    }

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 71
    Points : 72
    Points
    72
    Par défaut
    Maintenant j'essaie de faire un array propre pour envoyer cela dans un objet.

    j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    foreach ( $_POST['datas'] as $select => $langues ) {
        foreach ( $langues as $index  => $langue ) {
    			$arr[stripslashes(stripcslashes($select))] = stripcslashes(stripcslashes($select));
        }
    }
    Les données qui arrivent sont :

    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
     
        [datas] => Array
            (
                [Langue vivante 1] => Array
                    (
                        [0] => Anglais
                        [1] => Anglais 2
                        [2] => Anglais 3
                    )
     
                [Langue vivante 2] => Array
                    (
                        [0] => Espagnole
                        [1] => Espagnole 2
                        [2] => Espagnole 3
                    )
     
            )
    Mais je n'arrive a avoir que :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Array
    (
        [Langue vivante 1] => Langue vivante 1
        [Langue vivante 2] => Langue vivante 2
    )
    Je voudrais faire un système un peux comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $toto = "";
     
    for (){
    $toto .= "qsdqs";
    }
    J'ai essayé avec array_shift et array_push mais je ne trouve pas

    Si vous avez d'autre piste merci

  5. #5
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 159
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 159
    Points : 8 338
    Points
    8 338
    Billets dans le blog
    17
    Par défaut
    Si je reprends ta boucle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    foreach ( $_POST['datas'] as $select => $langues ) {
        foreach ( $langues as $index  => $langue ) {
            $arr[stripslashes(stripcslashes($select))][$index] = stripcslashes(stripcslashes($langue));
        }
    }
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 71
    Points : 72
    Points
    72
    Par défaut
    Merci bcp
    Cela donne

    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
     
    Array
    (
        [Langue vivante 1] => Array
            (
                [0] => Anglais
                [1] => sdfsdf
                [2] => qsdqsd
            )
     
        [Langue vivante 2] => Array
            (
                [0] => Espagnole
            )
     
    )
    Peux tu me confirmer qu'il n'est pas possible de faire ca ?
    Ou qu'il est possible ? C'est a dire mettre qu'une clé ne sera pas unique. Je n'arrive pas a trouver dans les doc php un endroit claire qui dit oui ou non si un peux mettre la même key dans un array

    Merci
    Array
    (
    [Langue vivante 1] => Anglais
    [Langue vivante 1] => Anglais 2
    [Langue vivante 1] => Anglais 3
    [Langue vivante 2] => Espagnole
    [Langue vivante 2] => Espagnole 2
    [Langue vivante 2] => Espagnole 3
    )

  7. #7
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 159
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 159
    Points : 8 338
    Points
    8 338
    Billets dans le blog
    17
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    [Langue vivante 1] => Anglais
    [Langue vivante 1] => Anglais 2
    [Langue vivante 1] => Anglais 3
    Ceci est impossible, chaque index/clef devant être unique.
    (sinon comment ferais-tu pour accéder aux éléments ?)

    Par contre ceci est bon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    [Langue vivante 1][0] => Anglais
    [Langue vivante 1][1] => Anglais 2
    [Langue vivante 1][2] => Anglais 3
    Le tableau contient un tableau de 3 éléments à la clef "Langue vivante".
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 71
    Points : 72
    Points
    72
    Par défaut
    Merci pour ces éclaircissements

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 02/03/2012, 11h27
  2. Comment récuper la valeur de plusieurs JCheckBox
    Par momjunior dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 17/08/2010, 19h36
  3. Récupere les valeurs de plusieurs "onchange"
    Par Paulux1 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 28/02/2008, 18h24
  4. [XSL]récupérer une valeur de plusieurs fichiers XML
    Par snoop dans le forum XSL/XSLT/XPATH
    Réponses: 7
    Dernier message: 05/02/2006, 00h32
  5. [Excel] Total de valeurs dans plusieurs feuilles
    Par Fealendril dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/01/2006, 12h25

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