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

Reply via email to