Hello,
j'ai fait le plein de capsule de café, servez vous.
Je me prends la tête avec un truc en php où le problème d'un typage de données mais je trouve pas où
voila le code partiel :
et voila le résultat
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70 if (file_exists($fichier)) { echo "La taille du fichier est de :" . filesize($fichier) . " octets <BR><BR>"; $ligne = 1; // compteur de ligne $fic = fopen($fichier, "a+"); while ($tab = fgetcsv($fic, 0, ';', '"')) { $champs = count($tab); //nombre de champ dans la ligne en question $ligne ++; //affichage de chaque champ de la ligne en question if ($tab[$vente["Statut"]] == $statut) { // Facture OK // détail // COMPTE echo $type_reglement[$tab[$vente["Mode paiement"]]] . ";"; // LIBELLE $libelle = strtoupper($tab[$vente["Nom"]] . " " . $tab[$vente["Prenom"]] . " - " . $tab[$vente["Num_commande"]]); echo $libelle . ";"; //DEBIT / CREDIT echo $tab[$vente["Total commande TTC"]] . ";0.00" . "<br />"; // écriture TVA if ($tab[$tva["20"]] != 0) { echo "445668;" . $libelle . ";0.00;" . $tab[$tva["20"]] . "<BR>"; } if ($tab[$tva["10"]] != 0) { echo "445666;" . $libelle . ";0.00;" . $tab[$tva["10"]] . "<BR>"; } if ($tab[$tva["5.5"]] != 0) { echo "445665;" . $libelle . ";0.00;" . $tab[$tva["5.5"]] . "<BR>"; } // PORT if ($tab[$vente["Frais livraison HT"]] != 0) { echo "6242xxx;" . $libelle . ";0.00;" . $tab[$vente["Frais livraison HT"]] . "<BR>"; } // COMPTE 700 echo "700;" . $libelle . ";0.00;" . $tab[$vente["Sous-total HT"]] . "<BR>"; // PERTE OU PROFIT $pp = ($tab[$vente["Total commande TTC"]] - ($tab[$tva["20"]] + $tab[$tva["10"]] + $tab[$tva["5.5"]] + $tab[$vente["Frais livraison HT"]] + $tab[$vente["Sous-total HT"]])); if ($pp != 0) { if ($pp > 0) echo "758;" . $libelle . ";0.00;" . $pp . "<BR>"; else echo "658;" . $libelle . ";" . $pp . ";0.00" . "<BR>"; print_r($tab); print_r(" PP=".$pp."<BR>"); $pp = $tab[$tva["20"]] + $tab[$tva["10"]] + $tab[$tva["5.5"]] + $tab[$vente["Frais livraison HT"]] + $tab[$vente["Sous-total HT"]]; print_r(" PP=".$pp."<BR>"); print_r(" PPmoins=".($tab[$vente["Total commande TTC"]]-$pp)."<BR>"); //print_r(" PP=".($tab[$tva["20"]] + $tab[$tva["10"]] + $tab[$tva["5.5"]] + $tab[$vente["Frais livraison HT"]] + $tab[$vente["Sous-total HT"]])); echo " Total TTC=".$tab[$vente["Total commande TTC"]] . "<BR>"; print_r (" 20%=".$tab[$tva["20"]]) . "<BR>"; print_r (" 10%=".$tab[$tva["10"]]) . "<BR>"; print_r (" 5.5%=".$tab[$tva["5.5"]]) . "<BR>"; echo " Livraison HT=".$tab[$vente["Frais livraison HT"]] . "<BR>"; echo " ssTotal HT=".$tab[$vente["Sous-total HT"]] . "<BR>"; echo "<BR>"; } echo "<BR>"; } } } ?>
Le soucis est au niveau du calcul de $pp ( Pertes et Profits )411CLIENTPP;VENET PHILIPPE - 59;31.62;0.00
445668;VENET PHILIPPE - 59;0.00;5.27
6242xxx;VENET PHILIPPE - 59;0.00;6.35
700;VENET PHILIPPE - 59;0.00;20.00
758;VENET PHILIPPE - 59;0.00;3.5527136788005E-15
Array ( [0] => 59 [1] => 56 [2] => 11-03-2014 [3] => [4] => 78 [5] => philippe [6] => *** [7] => **@*fr [8] => 11-03-2014 [9] => En cours de livraison [10] => 20.00 [11] => 24.00 [12] => 6.35 [13] => 7.62 [14] => Colissimo France sans signature [15] => 26.35 [16] => 31.62 [17] => PayPal [18] => 2 [19] => 12-03-2014 [20] => € Euro [21] => [22] => [23] => [24] => Payment accepted. [25] => philippe [26] => *** [27] => [28] => 6, avenue [29] => [30] => 69000 [31] => corbas [32] => France [33] => [34] => 0615****** [35] => 5.27 [36] => [37] => [38] => ) PP=3.5527136788005E-15
PP=31.62
PPmoins=3.5527136788005E-15
Total TTC=31.62
20%=5.27 10%= 5.5%= Livraison HT=6.35
ssTotal HT=20.00
411CLIENTCB;ELISABETE DE LIMA VAZ - 60;90.00;0.00
445668;ELISABETE DE LIMA VAZ - 60;0.00;15.00
700;ELISABETE DE LIMA VAZ - 60;0.00;75.00
411CLIENTCB;GALLIGARI MURIEL - 61;90.00;0.00
445668;GALLIGARI MURIEL - 61;0.00;15.00
700;GALLIGARI MURIEL - 61;0.00;75.00
411CLIENTPP;VOYER DANIEL - 62;180.00;0.00
445668;VOYER DANIEL - 62;0.00;30.00
700;VOYER DANIEL - 62;0.00;150.00
411CLIENTPP;PESSAH FRANCOIS - 63;90.00;0.00
445668;PESSAH FRANCOIS - 63;0.00;15.00
700;PESSAH FRANCOIS - 63;0.00;75.00
c'est qu'un squelette d'une moulinette d'où les print_r et echo à tout va!
je comprends pas comment peux trouver
31.62-31.62 = 3.5527136788005E-15????
mais pas sur toutes les lignes ...
Merci par avance.
Amicalement
Stéf








Répondre avec citation
Partager