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

PHP & Base de données Discussion :

Array dans array plus boucle [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut Array dans array plus boucle
    Bonjour à tous
    je galère dans la mise en place d'un array dans dans array dans une boucle.
    Au final j''aurais besoin d'obtenir ce type de structure :
    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
    (
        [0] => Array
            (
                [annee] => 2015
                [chiffre] => 123456
            )
     
        [1] => Array
            (
                [annee] => 2016
                [chiffre] => 123789
            )
    .
    .
    Voici mon code
    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
     
    $anneedebut="2015";
    $anneecourante = date('Y');
      for($i=$anneedebut; $i<=$anneecourante; $i++)
      {
        $anneincr = array ($i);
      }
     
            foreach($anneincr as $cle => $valeur) 
              {  
     
              $reqsomme = $mysqli->query("SELECT SUM(total) As 'somme' FROM compta WHERE date LIKE '%$valeur%'") or die ('Erreur SQL !<br />'.$sql.'<br />'.$mysqli->error);
                $res=mysqli_fetch_assoc($reqsomme);
     
                    $anneincr = array ('Annee' => $valeur,'Chiffre' => number_format($res["somme"],2,'.',' '));
                    echo'<pre>';
                    print_r ($final= array ($anneincr));
                    echo'</pre>';
              }
    Comment faire pour obtenir l'array dont j'aurai besoin ???

    Merci d'avance de votre d’aide

    Cdt

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2008
    Messages : 294
    Par défaut
    Bonjour,

    Déjà dans ta première boucle, ta variable anneeincr doit être un tableau.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    array_push($anneincr,array($i));

  3. #3
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    j'ai ajouté ton code mais la cela me créer 2 tableaux et une erreur ou j'ai pas tous compris ???

    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
     
    $anneedebut="2015";
    $anneecourante = date('Y');
      for($i=$anneedebut; $i<=$anneecourante; $i++)
      {
        $anneincr = array ($i);
        array_push($anneincr,array($i));
      }
     
            foreach($anneincr as $cle => $valeur) 
              {  
     
              $reqsomme = $mysqli->query("SELECT SUM(total) As 'somme' FROM compta WHERE date LIKE '%$valeur%'") or die ('Erreur SQL !<br />'.$sql.'<br />'.$mysqli->error);
                $res=mysqli_fetch_assoc($reqsomme);
     
                    $anneincr = array ('Annee' => $valeur,'Chiffre' => number_format($res["somme"],2,'.',' '));
                    echo'<pre>';
                    print_r ($final= array ($anneincr));
                    echo'</pre>';
              }
    Résulat

    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
     
    Array
    (
        [0] => Array
            (
                [Annee] => 2016
                [Chiffre] => 1 481.00
            )
     
    )
     
    Notice: Array to string conversion in /volume1/web/00dash/tccadm/stats/index.php on line 207
     
    Array
    (
        [0] => Array
            (
                [Annee] => Array
                    (
                        [0] => 2016
                    )
     
                [Chiffre] => 0.00
            )
     
    )

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

    tout ceci est bien compliqué.....

    Code php : 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
    $anneedebut="2015";
    $anneecourante = date('Y');
     
    $final = array();
    for($annee = $anneedebut; $annee <= $anneecourante; $annee++)
    {
    	$reqsomme = $mysqli->query("SELECT SUM(total) As 'somme' FROM compta WHERE date LIKE '%$annee%'") or die ('Erreur SQL !<br />'.$sql.'<br />'.$mysqli->error);
    	$res = mysqli_fetch_assoc($reqsomme);
     
    	$final[] = array (
    		'Annee' => $annee,
    		'Chiffre' => number_format($res["somme"],2,'.',' ')
    		);
    }
     
    	echo'<pre>'; print_r ($final); echo'</pre>';

  5. #5
    Membre éclairé Avatar de spawns
    Homme Profil pro
    Inscrit en
    Juillet 2004
    Messages
    558
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 558
    Par défaut
    ah oui, c'est beaucoup plus clair et efficace avec ton code.
    Nikel,
    Merci beaucoup.

    Cordialement

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

Discussions similaires

  1. Modifier array dans array avec noms dynamiques
    Par LeSmoox dans le forum Langage
    Réponses: 10
    Dernier message: 18/12/2015, 11h06
  2. [PHP 5.3] Modification dynamique d'un Array dans une boucle
    Par gestgm dans le forum Langage
    Réponses: 2
    Dernier message: 17/10/2013, 08h54
  3. Problème mettre array dans une boucle.
    Par savagenri dans le forum Langage
    Réponses: 4
    Dernier message: 13/10/2010, 18h23
  4. multiples array dans un, combiner avec boucle while
    Par leymiris dans le forum Langage
    Réponses: 2
    Dernier message: 27/07/2010, 16h19
  5. [JS] array dans un appel de fonction
    Par dib258 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 12/10/2005, 13h36

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