Re: wierd math problem
| From: | mark hurty | Date: | Tue, 13 May 2003 21:03:13 +0000 |
| Subject: | Re: wierd math problem | ||
| References: | 1 | Groups: | php.db |
| Request: | Send a blank email to php-db+get-27721@lists.php.net to get a copy of this message | ||
Thank you, Matt! Problem solved.
Mark
On Tuesday, May 13, 2003, at 01:48 PM, Matt Schroebel wrote:
I don't see a return $reduceBy; in the function getDiscountmark hurty | mark@hurty.com | 309.764.0911-----Original Message----- From: mark hurty [mailto:hurty@mac.com] Sent: Tuesday, May 13, 2003 12:58 PM To: php-db@lists.php.net Subject: [PHP-DB] wierd math problem It could be that I was just up too late and I'm not seeing something really obvious, but I having a weird math problem. in my script I have a function which calculates a discount for the purchase of tickets to a chamber music festival. Here's the function which performs as expected:-- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php --// if the patron orders tickets for 4 main events // he/she receives a 10% discount on those events function getDiscount() { $discResult = mysql_query ("select * from cart inner join items on cart.itemId = items.itemId where cart.cookieId = '" . GetCartId() . "' and items.itemDisc <> 'xx' group by items.itemDisc"); $disCount = mysql_num_rows ( $discResult ); if ($disCount >= 4) {cart.itemId = items.itemId$discPrices = mysql_query ("select * from cart inner join items oncart.cookieId = '" .whereGetCartId() . "'items.itemDisc <> 'xx'");andwhile ($row =mysql_fetch_array($discPrices))$reduceBy +=(($row["qty"] * $row["itemPrice"]) * 0.1);When I call the function on the page to show the discount, everything is ok:echo number_format($reduceBy, 2);}else { $reduceBy = 0; echo number_format($reduceBy, 2); } }Subscriber Discount: $<?php echo getDiscount(); ?>This displays "Subscriber Discount: $85.40" I have a variable ($totalCost) which tallies the non-discounted total cost for all the tickets purchased. ($totalCost += ($row["qty"] * $row["itemPrice"]);) which works fine. I call that variable on the page like this:Order Subtotal: $<?php echo number_format(($totalCost), 2); ?>Which displays "Order Subtotal: $854.00" Now here's the part that is screwy. When I try and calculate the discounted total price, using this:$myPrice = $totalCost-getDiscount(); echo ($myPrice);I get "8.54854" which is simply the result of the function getDiscount followed by the variable $totalCost. Of course I expected to get the result of the equation "854 - 85.40" or "768.60" What am I doing wrong? Mark -- mark hurty | mark@hurty.com | 309.764.0911 -- PHP Database Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php