You are here: Re: [PHP] Ok, why is this happening... « PHP « IT news, forums, messages
Re: [PHP] Ok, why is this happening...

Posted by John Nichel on 07/19/05 20:26

Chris Boget wrote:
>>Chris Boget wrote:
>><snip>
>>
>>>echo "if( $originalNet != $calculatedNet ) = " . ( (int)$originalNet !==
>>>(int)$calculatedNet ) . "<br>\n";
>>
>></snip>
>>Change this to echo out what you're comparing...
>>echo "if( ". (int)$originalNet ." != ". (int)$calculatedNet ." ) = " . (
>>(int)$originalNet !== (int)$calculatedNet ) . "<br>\n";
>>That'll show what numbers is actually trying to match.
>
>
> Ok, then that begs the following questions:
>
> If I don't cast any of the values, why do they display as being identicle?
> Additionally, why does every IF check fail in that case?

There's some freaky math going on there or something. I added a couple
of other echos in to see and for some reason it seems to be losing
single digit value (subtracting, rounding down, I don't know).

$calculatedGross = $originalNet + ( $originalNet * $commissionPct * 0.01 );

echo ( "Gross : " . (int)$calculatedGross ." = ". $originalNet ." + ( ".
$originalNet ." * ". $commissionPct ." *.01 )<br />\n" );

$calculatedNet = $calculatedGross / ( 1 + ( $commissionPct * 0.01 ));

echo ( "Net : " . (int)$calculatedNet." = " . (int)$calculatedGross . "
/ ( 1 + ( " . $commissionPct . " * .01 ) )<br />\n" );

--
John C. Nichel
ÜberGeek
KegWorks.com
716.856.9675
john@kegworks.com

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация