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 :

[Tableaux] insertion dans un tableau multidimentionnel à double entrée !


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 21
    Points : 17
    Points
    17
    Par défaut [Tableaux] insertion dans un tableau multidimentionnel à double entrée !
    Salut a tous !

    Le titre ne veux rien dire mais attire l'oeil du developpeur curieux et affamé de savoir !(comme moi)^^
    Gros probleme !

    Je cherche a inserer dans un tableau le resultat d'une requete SQL (je n'ai pa posté dans la partie SQL puisque nous n'allons pas toucher a SQL)
    et mon tableau DOIT etre de cette forme :

    $tab[ 'data' ] = array ( array ( "", "Mitel", "Cisco","3Com", "Securite", "WI-FI", "Réseau", "Messagerie", "Système", "WAN"), array ( "", 10, 15,30,45, 6, 4 ) );
    2 tableuax dans 1.


    Pour ce faire j'use donc de ce petit bout de code la :
    while($ligne = mysql_fetch_row($result)){
    $tab[ 'data' ] = array ( array ( "",urldecode(utf8_encode("$ligne[0]")) ), array ( "",$ligne[1] ) );
    }
    Le prob ... ba c'est que je n'obtient que la derniere valeur retournée dans ma boucle (ce qui est normal) mais je ne sais pas comment définir ce tableau de deux tableaux....

    Avez vous une idée grandiose ?

    Merci d'avance !

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Août 2006
    Messages : 28
    Points : 35
    Points
    35
    Par défaut
    Salut, c'est normal que tu es un soucis puisque tu crée un nouveau tableau dans
    $tab['data'] à chaque boucle du while.

    Pour que ça fonctionne, il faut, à chaque boucle du while, que tu AJOUTES une cas dans le tableau existant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    //Initialisation du tableau général
    $tab['data'] = array(array(), array());
     
    //Récupération des données
    while($ligne = mysql_fetch_row($result)){
        //Ajout de la 1ere valeur dans une nouvelle case du 1er sous-tableau
        $tab['data'][0][] = urldecode(utf8_encode("$ligne[0]"))
        //Ajout de la 2nd valeur dans une nouvelle case du 2nd sous-tableau
        $tab['data'][1][] = $ligne[1];
    }

  3. #3
    Fabouney
    Invité(e)
    Par défaut
    bonjour,

    essay ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    while($ligne = mysql_fetch_row($result)){
    $tab[ 'data' ][] = array ( "",urldecode(utf8_encode("$ligne[0]")) );
    }
    Cordialement

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 21
    Points : 17
    Points
    17
    Par défaut
    Ca c'est du rapide ca fait plaisir.

    Fabouney,
    dans ta solution il me manque qd même la moitié de mes données ^^


    Zeus_phpfrance, ouai je sais que j'écrase a chaque fois ^^ mais quand je faisais un $tab[ 'data' ][] = nananana.

    comme il y a mes 2 tableaux ca me ressortait une erreur^^ (normal aussi)

    Je test ta soluce et je te tiens au courant tout de suite

    Merci a tous les 2 !

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Août 2006
    Messages : 28
    Points : 35
    Points
    35
    Par défaut
    Citation Envoyé par jpeg1st
    Zeus_phpfrance, ouai je sais que j'écrase a chaque fois ^^ mais quand je faisais un $tab[ 'data' ][] = nananana.

    comme il y a mes 2 tableaux ca me ressortait une erreur^^ (normal aussi)
    Est-ce que tu as essayé mon exemple ?

    Dans mon bout de code, je construit les 2 tableaux en même temps mais chacun de leur coté
    $tab[ 'data' ][0][] et $tab[ 'data' ][1][] au lieu de $tab[ 'data' ][]

    @Fabouney : désolé mais ta solution construit le tableau dans le mauvais sens
    0 =>[ligne0, ligne1],
    1 =>[ligne0, ligne1],
    ...

    au lieu de
    0 =>[ligne0, ligne0],
    1 =>[ligne1, ligne1],
    ...

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 21
    Points : 17
    Points
    17
    Par défaut
    ta solution est top zeus !

    Par contre jai besoin d'avoir une cellule vide en 1er

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    array ( array ( "", "Mitel", "Cisco","........."), array ( "", 10, 15,...) );

    Merci !

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Août 2006
    Messages : 28
    Points : 35
    Points
    35
    Par défaut
    Dans ce cas là, il suffit de retoucher l'initialisation du tableau ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    //Initialisation du tableau général (Chaque sous-tableau contient une case vide)
    $tab['data'] = array(array(""), array(""));

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 21
    Points : 17
    Points
    17
    Par défaut
    Impécable merci !

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Août 2006
    Messages : 28
    Points : 35
    Points
    35
    Par défaut
    Je ne sais pas trop comment ça marche ici mais n'oublie pas le petit résolu

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

Discussions similaires

  1. [Tableaux] Checkbox dans un tableau
    Par mxmorin dans le forum Langage
    Réponses: 9
    Dernier message: 02/06/2006, 14h35
  2. [Tableaux] Compter dans un tableau
    Par CAMB3L dans le forum Langage
    Réponses: 3
    Dernier message: 29/04/2006, 18h23
  3. [Tableaux] Boucle dans un tableau
    Par apprenti-fab dans le forum Langage
    Réponses: 9
    Dernier message: 24/04/2006, 10h14
  4. Réponses: 16
    Dernier message: 02/12/2005, 10h39
  5. [Tableaux] Count dans un tableau
    Par krfa1 dans le forum Langage
    Réponses: 2
    Dernier message: 27/11/2005, 20h15

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