我想通过外键计数表中的记录

时间:2019-02-24 05:15:39

标签: php

这是购物车下拉列表。我已经为我的电子商务商店做过。现在,我想如果cart表中的两个产品在表中都具有相同的category Id,那么我想显示一个数量为两个的单个产品。 for example (2 * $240) .

enter image description here

这是数据库表图片。

enter image description here

这是用于在下拉菜单中显示产品的代码。

    <ul class="header-cart-wrapitem">
       <?php
          $displayCart = "SELECT cart.*,products.product_img1 FROM `cart` 
            join products on products.product_id = cart.product_id 
            WHERE cart.status = 'enabled' order by cart.cart_id DESC";
            $resultCart = mysqli_query($conn,$displayCart);
            while($rowCart = mysqli_fetch_array($resultCart)){?>
       <li class="header-cart-item">
          <div class="header-cart-item-img">
             <img src="<?=$base_url .'pages/Ajax/'.$rowCart['product_img1'];?>" alt="IMG">
          </div>
          <div class="header-cart-item-txt">
             <a href="#" class="header-cart-item-name">
             <?=$rowCart['product_name'];?>
             </a>
             <span class="header-cart-item-info">
             <?=$rowCart['product_qty'];?> x $<?=$rowCart['product_price'];?>
             </span>
          </div>
       </li>
       <?php } ?>
    </ul>

1 个答案:

答案 0 :(得分:1)

这样的事情应该可以解决!

SELECT 
  COUNT(product_id) as count,
  cart.*,
  products.product_img1
FROM 
  `cart` 
  join products on products.product_id = cart.product_id 
WHERE 
  cart.status = 'enabled' 
GROUP BY 
  product_id 
order by 
  cart.cart_id DESC

希望这会有所帮助!