michgoarin | Bonjour,
Dans l'objectif de faire un reporting sous forme de camembert, je dois extraire les données distinctes de 7 colonnes (CODE_TRAV1 à 7) qui composent la série 2 ($serie2[]). La série 1 ($serie1[]) compte le nombre de fois que les éléments de la série2 sont trouvés. J'ai réussi à la faire pour une colonne voici le code :
Code :
- <?php
- include("menu//chiens.php" );
- $code_chargee="V140";
- // Extraire les codes travaux utilisé sur ce véhicule
- // Extraire les codes travaux utilisé sur ce véhicule
- $extract_codeTrav_rep = $bdd->query("SELECT DISTINCT CODE_TRAV1 FROM `ordre_reparation_essai` WHERE CODE_VEHICULE='".$code_chargee."'" );
- while($dataset_separated = $extract_codeTrav_rep->fetch())
- {
- $serie2[] = $dataset_separated['CODE_TRAV1'];
- }
- $extract_codeTrav_rep->closeCursor();
- $extract_count_trav = $bdd->query("SELECT count(CODE_TRAV1) FROM `ordre_reparation_essai` WHERE CODE_VEHICULE='".$code_chargee."' GROUP BY CODE_TRAV1" );
- $serie1 = array();
- while($serie1_separated = $extract_count_trav->fetch())
- {
- $serie1[] = $serie1_separated[0];
- }
- $extract_count_trav->closeCursor();
- ?>
- <table>
- <tr><th width="50">Code</th><th width="300" align="left">Désignation</th><th width="50">Nbr</th></tr>
- <?php
- $i = 0;
- $j = 0;
- while ($i < count($serie2)) {
- $a = $serie2[$i];
- echo ("<tr bgcolor='".( ($j++ % 2 == 0) ? '#e1e1e1' : '#ffffff' )."'>" );
- echo ("<td align='center'>".$a."</td>" );
- $rep_famille = $bdd->query("SELECT*FROM `taches` WHERE CODE_TACHE='".$a."'" );
- $famille_extraite= $rep_famille->fetch();
- $famille=$famille_extraite['TACHE'];
- echo ("<td align='left'>".$famille."</td>" );
- echo ("<td align='center'>".$serie1[$i]."</td></tr>" );
- $i++;
- }
- $rep_famille->closeCursor();
- ?>
- </table>
|
Voici une solution que j'avais envisagé, j'ai cependant une erreur "Array to string conversion" que je n'arrive pas à résoudre :
Code :
- <?php
- include("menu//chiens.php" );
- $code_chargee="V140";
- // Extraire les codes travaux utilisé sur ce véhicule
- // Extraire les codes travaux utilisé sur ce véhicule
- $extract_codeTrav_rep = $bdd->query("SELECT DISTINCT CODE_TRAV1,CODE_TRAV2,CODE_TRAV3,CODE_TRAV4,CODE_TRAV5,CODE_TRAV6,CODE_TRAV7 FROM `ordre_reparation_essai` WHERE CODE_VEHICULE='".$code_chargee."'" );
- $serie2 = array();
- while($dataset_separated = $extract_codeTrav_rep->fetch())
- {
- $serie2[] = $dataset_separated;
- }
- $extract_codeTrav_rep->closeCursor();
- $extract_count_trav = $bdd->query("SELECT count(CODE_TRAV1)+count(CODE_TRAV2)+count(CODE_TRAV3)+count(CODE_TRAV3)+count(CODE_TRAV4)+count(CODE_TRAV5)+count(CODE_TRAV6)+count(CODE_TRAV7) FROM `ordre_reparation_essai` WHERE CODE_VEHICULE='".$code_chargee."' GROUP BY CODE_TRAV1,CODE_TRAV2,CODE_TRAV3,CODE_TRAV4,CODE_TRAV5,CODE_TRAV6,CODE_TRAV7" );
- $serie1 = array();
- while($serie1_separated = $extract_count_trav->fetch())
- {
- $serie1[] = $serie1_separated[0];
- }
- $extract_count_trav->closeCursor();
- ?>
- <table>
- <tr><th width="50">Code</th><th width="300" align="left">Désignation</th><th width="50">Nbr</th></tr>
- <?php
- $i = 0;
- $j = 0;
- while ($i < count($serie2)) {
- $a= $serie2[$i];
- echo ("<tr bgcolor='".( ($j++ % 2 == 0) ? '#e1e1e1' : '#ffffff' )."'>" );
- echo ("<td align='center'>".$a."</td>" );
- $rep_famille = $bdd->query("SELECT*FROM `taches` WHERE CODE_TACHE='".$a."'" );
- $famille_extraite= $rep_famille->fetch();
- $famille=$famille_extraite['TACHE'];
- echo ("<td align='left'>".$famille."</td>" );
- echo ("<td align='center'>".$serie1[$i]."</td></tr>" );
- $i++;
- }
- $rep_famille->closeCursor();
- ?>
- </table>
|
Merci pour le coup de main !!! ---------------
Mich
|