2016-04-12 11 views
-2

Ich habe eine SQL-Abfrage, die dieses Ergebnis zurück:die Anzeige eines Arrays in PHP anpassen

enter image description here

aber ich möchte, um es anzuzeigen, wie die

enter image description here

Wie kann ich tue das in PHP, ich wurde versucht, aber ich fand einige Schwierigkeit mit Wert 'Semaine X', der der Name der Tabelle Spalte und der Wert von 'libelleCategorieClient' wurde, der nicht wiederholen kann Danke,

+0

Was die Struktur der Abfrageergebnisse ist? Arrays? Objekte? Objekte in Arrays? –

+0

es ist ein Objekt, es ist zu lang, weil ich viele Tabellen in meinem DB habe: 'SELECT DISTINCT cat.libelleCategorieClient, sum (ligne.quantiteLigneCommande * ligne.prixLigneCommande) AS montant, sem.libelleSemaine FROM CategorieClient cat, Client c, commande cmd, lignecommande ligne, semaine sem WHERE cat.idCategorieClient = c.idCategorieClient UND c.idClient = cmd.idClient UND cmd.idCommande = ligne.idCommande UND sem.idSemaine = cmd.idSemaine group von cat.libelleCategorieClient, sem.libelleSemaine' –

+0

diese Abfrage Gib die Tabelle über –

Antwort

1

Um Zeilen in Spalten zu drehen (Drehbare) unter der Annahme, libelleCategorieClient eindeutig zuzuordnen sind, versuchen Sie Folgendes:

<?php 
$db = new PDO('mysql:host=localhost;dbname=test', 'root', 'pass'); 
    $q = $db->query("SELECT DISTINCT cat.libelleCategorieClient, 
      sum(ligne.quantiteLigneCommande * ligne.prixLigneCommande) AS montant, 
      sem.libelleSemaine 
      FROM CategorieClient cat,Client c, commande cmd, 
      lignecommande ligne,semaine sem 
      WHERE cat.idCategorieClient=c.idCategorieClient 
      AND c.idClient=cmd.idClient AND cmd.idCommande=ligne.idCommande 
      AND sem.idSemaine=cmd.idSemaine 
      GROUP BY cat.libelleCategorieClient, sem.libelleSemaine"); 
    $sem=array(); 
    $client=array(); 
    while($row=$q->fetch(PDO::FETCH_ASSOC)){ 
     $sem[$row['cat.libelleCategorieClient']][$row['libelleSemaine']] = $row['montant']; 
     $client[$row['cat.libelleCategorieClient']]= $row['libelleCategorieClient']; 
    } 
    $semkey=key($sem); 

    echo '<table>'; 
    echo '<tr>'; 
    echo '<th>Cetegories Clients</th>'; 
    foreach($sem[$semkey] as $keys=>$vals){ 
      echo '<th>'.$keys.'</th>'; 
    } 
    echo '</tr>'; 

    foreach($sem as $key=>$val){ 
      echo '<tr>'; 
      echo '<td>'.$client[$key].'</td>'; 
      foreach($val as $v){ 
       echo '<td>'.$v.'</td>'; 
      } 
     echo '</tr>'; 
    } 
    echo '</table>'; 
?> 
+0

Vielen Dank, Mawia HL, die funktioniert –

Verwandte Themen