par
skyinho » 16 avr. 2009, 11:26
Bonjour,
Actuellement en stage, je rencontre un bug plus qu'étrange sur un programme...
Une boucle récupère des valeurs numériques et en fait la somme, en gros...seulement lors d'un passage, le programme ajoute 1 au lieu de la valeur souhaitée...
Là je deviens un peu dingue, donc si quelqu'un sait d'où ça peut venir, je vous couvre de remerciements par avance !
Pour être plus clair voici le bout de code :
foreach($this->invoicestim[$estim['devis']]['echeances'] as $idech => $ech)
{
echo "<br/>ECHEANCE ".$idech."<br/>";
if(substr($ech['ech_date'],0,4) == $annee)
{
if ($ech['sigle'] == '+' && $ech['ech_encash'] != 2 && $ech['ech_encash'] != 3)
{
$val = number_format($ech['ech_montant'],2);
echo "<br/>ANCIEN MONTANT ".$this->montant_total."<br/>";
echo "<br/>MODIF : + ".$val."<br/>";
echo 2*$val;
$this->invoicestim[$estim['devis']]['echeances']['montant_actuel'] += $val;
$this->montant_total += $val;
echo "<br/>NOUVEAU MONTANT ".$this->montant_total."<br/>";
echo "<br/><br/>";
}
}
et son résultat :
ECHEANCE 5110
ANCIEN MONTANT 0
MODIF : + 640.00
1280
NOUVEAU MONTANT 640
ECHEANCE 6786
ANCIEN MONTANT 640.00
MODIF : + 640.00
1280
NOUVEAU MONTANT 1280
ECHEANCE 6787
ANCIEN MONTANT 1,280.00
MODIF : + 640.00
1280
NOUVEAU MONTANT 641
ECHEANCE 12003
ANCIEN MONTANT 641.00
MODIF : + 320.00
640
NOUVEAU MONTANT 961
Bonjour,
Actuellement en stage, je rencontre un bug plus qu'étrange sur un programme...
Une boucle récupère des valeurs numériques et en fait la somme, en gros...seulement lors d'un passage, le programme ajoute 1 au lieu de la valeur souhaitée...
Là je deviens un peu dingue, donc si quelqu'un sait d'où ça peut venir, je vous couvre de remerciements par avance !
Pour être plus clair voici le bout de code :
[quote]foreach($this->invoicestim[$estim['devis']]['echeances'] as $idech => $ech)
{
echo "<br/>ECHEANCE ".$idech."<br/>";
if(substr($ech['ech_date'],0,4) == $annee)
{
if ($ech['sigle'] == '+' && $ech['ech_encash'] != 2 && $ech['ech_encash'] != 3)
{
$val = number_format($ech['ech_montant'],2);
echo "<br/>ANCIEN MONTANT ".$this->montant_total."<br/>";
echo "<br/>MODIF : + ".$val."<br/>";
echo 2*$val;
$this->invoicestim[$estim['devis']]['echeances']['montant_actuel'] += $val;
$this->montant_total += $val;
echo "<br/>NOUVEAU MONTANT ".$this->montant_total."<br/>";
echo "<br/><br/>";
}
}[/quote]
et son résultat :
[quote]ECHEANCE 5110
ANCIEN MONTANT 0
MODIF : + 640.00
1280
NOUVEAU MONTANT 640
ECHEANCE 6786
ANCIEN MONTANT 640.00
MODIF : + 640.00
1280
NOUVEAU MONTANT 1280
ECHEANCE 6787
ANCIEN MONTANT 1,280.00
MODIF : + 640.00
1280
NOUVEAU MONTANT [color=red][b]641[/b][/color]
ECHEANCE 12003
ANCIEN MONTANT 641.00
MODIF : + 320.00
640
NOUVEAU MONTANT 961[/quote]