swissbeets Posted July 10, 2008 Share Posted July 10, 2008 i am trying to make it so that i can display the total at the bottom of my shopping cart but i have no idea how to use math in php someone helped me to here but all that is being displayed is Array ( [8] => 14.95 [9] => 14.95 ) and it is not taking into consideration the quantity here is my code $query3= " SELECT * FROM `cart` WHERE cookie_id = ".$cookie_id; $result2 = mysql_query($query3); $products = array(); while($row2 = mysql_fetch_array($result2)) { $products[$row2['product_id']][] = $row2; } $sub_totals = array(); foreach ($products as $product_id => $n) { foreach ($products[$product_id] as $data) { $sub_totals[$product_id] += $data['product_price']; } } echo '<pre>' . print_r($sub_totals, true) . '</pre>'; Quote Link to comment Share on other sites More sharing options...
Barand Posted July 10, 2008 Share Posted July 10, 2008 As quantity never gets a mention in your code, why is this a surprise? Quote Link to comment Share on other sites More sharing options...
swissbeets Posted July 10, 2008 Author Share Posted July 10, 2008 very true... while($row2 = mysql_fetch_array($result2)) { $products[$row2['product_id']][] = $row2; } $sub_totals = array(); foreach ($products as $product_id => $n) { foreach ($products[$product_id] as $data) { $sub_totals[$product_id] = $data['product_price'] * $data['qty']; } } echo '<pre>' . print_r($sub_totals, true) . '</pre>'; now it is displaynig them in the array but and seperately which i want, but i need to get them to add together also for a total i found very little information on this on the net (basic math functions) Quote Link to comment Share on other sites More sharing options...
gijew Posted July 10, 2008 Share Posted July 10, 2008 When you're looping through them use += to get the total. Use the round() function to round off the remainder and finally money_format() to format it. Quote Link to comment Share on other sites More sharing options...
swissbeets Posted July 10, 2008 Author Share Posted July 10, 2008 is money_format already a function? Quote Link to comment Share on other sites More sharing options...
gijew Posted July 10, 2008 Share Posted July 10, 2008 http://us2.php.net/money_format Quote Link to comment Share on other sites More sharing options...
Barand Posted July 10, 2008 Share Posted July 10, 2008 try foreach ($products as $product_id => $n) { foreach ($n as $data) { $sub_totals[$product_id] += $data['product_price'] * $data['qty']; } } echo '<pre>' . print_r($sub_totals, true) . '</pre>'; Quote Link to comment Share on other sites More sharing options...
swissbeets Posted July 11, 2008 Author Share Posted July 11, 2008 that worked, thank you very much Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.