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 :

Construction d'un tableau issu d'une BDD [PHP 5.6]


Sujet :

Langage PHP

  1. #1
    Membre averti Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Points : 436
    Points
    436
    Par défaut Construction d'un tableau issu d'une BDD
    Bonjour à tous,

    Soit une table SQL:

    id| id_prod | date | qte

    1 | 12 | 2018-03-01 | 6
    2 | 20 | 2019-02-13 | 5
    3 | 20 | 2019-03-10 | 10
    4 | 30 | 2018-04-01 | 3
    etc..

    Je ramasse tout dans une boucle et construis mon tableau avec $tab[] = $row;
    Mais ce que je voudrais, c'est pour les produits présents plusieurs fois avec des dates différentes (dans mon exemple le 20) c'est introduire une clé "lot", ce qui donnerait:

    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
     
    Array
    (
        [0] => Array
            (
                [id] => 1
                [id_prod] => 12
                [date] => 2018-03-01
                [qte] => 6
                [lot] => 1
            )
     
        [1] => Array
            (
                [id] => 2
                [id_prod] => 20
                [date] => 2019-02-13
                [qte] => 5
                [lot] => 1
            )
     
        [2] => Array
            (
                [id] => 3
                [id_prod] => 20
                [date] => 2019-03-10
                [qte] => 10
                [lot] => 2
            )
    etc..
    )
    Comme on le voit, quand un produit est unique, la clé position est forcément 1. Mais elle s'incrémente autant que le même produit se répète. Donc pour un produit présent 4 fois, on aura les positions 1, 2, 3 et 4.
    Et pour ce faire, je veux bien de l'aide.
    Merci d'avance.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ca ne serait pas plus logique de regrouper par id de produit plutôt ?
    Array
    (
    [1] => Array(
    0=>Array(
    [id] => 1
    [id_prod] => 12
    [date] => 2018-03-01
    [qte] => 6
    [lot] => 1
    )
    ),
    [20] => Array(
    0=>Array(
    [id] => 2
    [id_prod] => 20
    [date] => 2019-02-13
    [qte] => 5
    ),
    1=>Array(
    [id] => 3
    [id_prod] => 20
    [date] => 2019-03-10
    [qte] => 10
    )
    )
    )
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

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

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $tab[$row['id_prod']][]= $row;
    Vérifie avec un var_dump.

  4. #4
    Membre averti Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Points : 436
    Points
    436
    Par défaut
    Merci à tous les deux, c'est effectivement beaucoup plus simple à traiter de cette façon.
    Bonne soirée !

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

Discussions similaires

  1. Filtre dans un tableau issu d'une BDD
    Par laissaAnn dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 24/05/2013, 15h37
  2. [MySQL] Filtre dans un tableau issu d'une BDD
    Par laissaAnn dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 24/05/2013, 11h16
  3. Largeur d'un tableau issu d'une BDD
    Par laissaAnn dans le forum Mise en page CSS
    Réponses: 11
    Dernier message: 13/05/2013, 11h37
  4. [MySQL] Afficher un tableau issue d'une BDD à l'aide d'un template
    Par Eonix dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 20/06/2007, 17h45
  5. [MySQL] Tableau rempli par une BDD
    Par xender dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 17/05/2006, 11h58

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