Bonjour,
J'ai un site e-commerce et j'ai codé un petit truc pour mon comptable.
Le code prend les chiffres dont il a besoin dans la base (Produits HT, Livraison HT, Livraison Taxe, Produits Taxe) et les alloue à un numéro de compte comptable.
Pour ceux qui connaissent, par exemple les ventes produits HT c'est en compte 70700000, etc.
Ca lui permet de ne pas repointer chaque facture à la main.
Bref, le code me fait super bien le boulot, mais quand je fais la somme de chaque compte, le résultat me donne des tas de décimales alors que je n'ai que des chiffres à deux décimales dans la base !
Je ne comprends pas pourquoi !
Par exemple dans ma base de données j'ai ça :
411 57.5
70700000 40.00
70850000 7.92
44571 8
44571 1.58
411 56.5
70700000 40.00
70850000 7.08
44571 8
44571 1.42
411 77.2
70700000 57.67
70850000 6.67
44571 11.53
44571 1.33
Et lorsque je demande de me faire la somme pour chaque compte, je me retrouve avec des résultats genre 847.4777777778
Je ne comprends pas pourquoi une somme de chiffres à deux décimales me donne ça. Du coup, mes résultats sont faux de 2 ou 3 centimes.
Le code tout simple pour les sommes est le suivant :
Vous auriez une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 //sql query $sql = "SELECT COMPTE, SUM(MONTANT) FROM EXPORT GROUP BY COMPTE"; $result = $link->query($sql); //display data on web page while($row = mysqli_fetch_array($result)){ echo "Total ". $row['COMPTE']. " = ". $row['SUM(MONTANT)']; echo "<br />"; } //close the connection $link->close();
Je me demande si c'est pas parce que mes champs sont en VARCHAR (?)
Merci !
Partager