ID: 22240 User updated by: shadlej at iwakuni dot usmc dot mil Reported By: shadlej at iwakuni dot usmc dot mil -Status: Feedback +Status: Open Bug Type: Math related Operating System: Windows PHP Version: 4.3.0 New Comment:
Well, it sort-of worked. I had to move the number_format function off the $var and into the echo in BOTH areas. (follows) I don't know why it works the other way up until a total of 999 and anything after that is incorrect. I guess it doesn't matter. Lesson learned. ThanX for following up. // $totalamount = number_format($totalamount, 2); echo "<br>\n"; echo "Items Ordered: ".$totalqty."<br>\n"; echo "Subtotal: $".number_format($totalamount, 2)."<br>\n"; $taxrate = 0.10; $totalamount = $totalamount * (1 + $taxrate); // $totalamount = number_format($totalamount, 2); echo "Total including tax: $".number_format($totalamount, 2)."<br>\n"; Previous Comments: ------------------------------------------------------------------------ [2003-02-17 17:44:59] [EMAIL PROTECTED] <?php echo number_format(1111, 2); ?> Does this work? ------------------------------------------------------------------------ [2003-02-17 02:58:54] shadlej at iwakuni dot usmc dot mil Same results. ( I used the Windows build ) Anything over 999 as a total gets an incorrect result. BTW number_function should read number_format. Sorry for the mistake. ------------------------------------------------------------------------ [2003-02-16 10:28:20] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php4-STABLE-latest.tar.gz For Windows: http://snaps.php.net/win32/php4-win32-STABLE-latest.zip ------------------------------------------------------------------------ [2003-02-16 03:44:07] shadlej at iwakuni dot usmc dot mil I got this code from a book. It works as long as the total is less than 999. when it exceeds 999, it can't calculate the total properly. I think it has something to do with the number_function. +++++++++++++++++++++index.html ++++++++++++++++++ <form action="processorder.php" method=post> <table border=0> <tr bgcolor=#cccccc> <td width=150>Item</td> <td width=15>Quantity</td> </tr> <tr> <td>Tires</td> <td align=center><input type="text" name="tireqty" size=3 maxlength=3></td> </tr> <tr> <td>Oil</td> <td align=center><input type="text" name="oilqty" size=3 maxlength=3></td> </tr> <tr> <td>Spark Plugs</td> <td align=center><input type="text" name="sparkqty" size=3 maxlength=3></td> </tr> <tr> <td colspan=2 align=center><input type=submit value="Submit Order"></td> </tr> </table> </form> ++++++++++++ preprocess.php ++++++++++++++++++ <html> <head> <title>Jim's Auto Parts - Order Results</title> </head> <body> <h1>Jim's Auto Parts</h1> <h2>Order Results</h2> <? define("TIREPRICE", 100); define("OILPRICE", 10); define("SPARKPRICE", 4); echo "<p>Order Processed at "; echo date("H:i, jS F"); echo "<br>"; echo "<p>Your order is as follows:"; echo "<br>"; echo $tireqty." tires<br>"; echo $oilqty." bottles of oil<br>"; echo $sparkqty." spark plugs<br>"; $totalqty = $tireqty + $oilqty + $sparkqty; $totalamount = $tireqty * TIREPRICE + $oilqty * OILPRICE + $sparkqty * SPARKPRICE; $totalamount = number_format($totalamount,2); echo "<br>\n"; echo "Items Ordered: ".$totalqty."<br>\n"; echo "Subtotal: $".$totalamount."<br>\n"; $taxrate = 0.10; $totalamount = $totalamount * (1 + $taxrate); $totalamount = number_format($totalamount, 2); echo "Total including tax: $".$totalamount."<br>\n"; ?> </body> </html> ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=22240&edit=1