Boucle de lecture Mysql avec sous-totaux
Bonjour à Tous,
Je lis une table de chiffre d'affaires avec date, montant HT, TTC, etc...par semaine. Il y a plusieurs enregistrements pour un jour donné, avec la même date, donc.
Je voudrais afficher les sous-totaux après chaque jour.
J'ai fait :
Code:
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
|
$sous_tot_ht = 0;
$sous_tot_ttc = 0;
$sous_tot_marge = 0;
$sous_tot_tva55 = 0;
$sous_tot_tva20 = 0;
while($row = $sql->fetch(PDO::FETCH_ASSOC)){
$date_encours = $row['date'];
$ligne .= '<tr><td>'.date_sql($row['date']).'</td>
<td>'.fprix($row['vente_ht']).'</td>
<td>'.fprix($row['vente_ttc']).'</td>
<td>'.fprix($row['tva55']).'</td>
<td>'.fprix($row['tva20']).'</td>
<td>'.fprix($row['tot_marge']).'</td>
</tr>';
if($date_prec != $date_encours){
$sous_tot_ht += $row['vente_ht'];
$sous_tot_ttc += $row['vente_ttc'];
$sous_tot_marge += $row['tot_marge'];
$sous_tot_tva55 += $row['tva55'];
$sous_tot_tva20 += $row['tva20'];
$ligne .= '<tr><td>Total pour le '.date_sql($row['date']).'</td><td>'.fprix($sous_tot_ht).'</td><td>'.fprix($sous_tot_ttc).'</td><td>'.fprix($sous_tot_tva55).'</td><td>'.fprix($sous_tot_tva20).'</td><td>'.fprix($sous_tot_marge).'</td></tr>';
}
$date_prec = $date_encours;
}
$ligne .= '</table>'; |
Mais cela ne fonctionne pas, tant au niveau des césures - la ligne sous total ne s'intercale pas correctement après les jours concernés, que au niveau des résultats eux-mêmes.
Bref tout faux...