2015-04-04 93 views
0

我有一個用戶購物車上的項目列表,並需要找出一種方法來加總每個產品的價格。它必須首先檢查每個用戶的購物車表中的產品ID,然後檢查產​​品表以獲取價格。如何根據用戶購物車總結產品價格總和?

這是抓住產品信息和購物車項目(上市目的)代碼:

 $grabProducts = $connect->prepare("SELECT `product`, `quantity` FROM `cart` WHERE `session` = ? ORDER BY `id` DESC"); 
     $grabProducts->bind_param('s', $sessionCode); 
     $grabProducts->execute(); 
     $grabProducts->bind_result($productId, $productQuantity); 
     $grabProducts->store_result(); 

while($grabProducts->fetch()) { 
     $grabProductInformation = $connect->prepare("SELECT `name`, `description`, `shortname`, `game`, `server`, `price` FROM `products` WHERE `id` = ?"); 
     $grabProductInformation->bind_param('i', $productId); 
     $grabProductInformation->execute(); 
     $grabProductInformation->bind_result($productName, $productDescription, $productShort, $productGame, $productServer, $productPrice); 
     $grabProductInformation->store_result(); 
     $grabProductInformation->fetch(); 
      $grabProductInformation->free_result(); 
      $grabProductInformation->close(); 
} 

什麼是得到一個總的價格從每個項目的最佳方式?

+0

瘋狂小叫'SUM()'? – 2015-04-04 23:59:30

+0

我知道總和,但不知道如何通過第一個查詢和第二個查詢。因爲它需要基於兩者來使用...不知道你明白我的意思。它從一個獲取ID,然後從另一個獲取價格。查詢將如何查看? – invidious 2015-04-05 00:05:06

回答

3

在您的循環中,從數據庫中獲取產品價格後,使用變量來保存總價值,並在循環結束時獲得結果中所有價格的總和。

$sum=0;  
while($grabProducts->fetch()) { 
// existing code here 
$sum+=$productPrice; 
} 
echo $sum; 
+0

最簡單的解決方案,謝謝。 – invidious 2015-04-05 00:21:46

0
select sum(products.price) from cart,products where cart.product=products.id and cart.session=? 
相關問題