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>'; Link to comment https://forums.phpfreaks.com/topic/114178-solved-adding-up-my-shopping-cart/ 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? Link to comment https://forums.phpfreaks.com/topic/114178-solved-adding-up-my-shopping-cart/#findComment-587090 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) Link to comment https://forums.phpfreaks.com/topic/114178-solved-adding-up-my-shopping-cart/#findComment-587095 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. Link to comment https://forums.phpfreaks.com/topic/114178-solved-adding-up-my-shopping-cart/#findComment-587100 Share on other sites More sharing options...
swissbeets Posted July 10, 2008 Author Share Posted July 10, 2008 is money_format already a function? Link to comment https://forums.phpfreaks.com/topic/114178-solved-adding-up-my-shopping-cart/#findComment-587102 Share on other sites More sharing options...
gijew Posted July 10, 2008 Share Posted July 10, 2008 http://us2.php.net/money_format Link to comment https://forums.phpfreaks.com/topic/114178-solved-adding-up-my-shopping-cart/#findComment-587103 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>'; Link to comment https://forums.phpfreaks.com/topic/114178-solved-adding-up-my-shopping-cart/#findComment-587113 Share on other sites More sharing options...
swissbeets Posted July 11, 2008 Author Share Posted July 11, 2008 that worked, thank you very much Link to comment https://forums.phpfreaks.com/topic/114178-solved-adding-up-my-shopping-cart/#findComment-587132 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.