Php 更新库存数量

Php 更新库存数量,php,mysql,sql,Php,Mysql,Sql,我很难根据购物车表中的大小更新库存表中的库存数量 股票 推车 运行代码后,stock表将变成这样 股票 应该是这样的 股票 我的代码 include "db_connect.php"; //update stock quantity $stockquery = mysqli_query($connect, "UPDATE stock SET Quantity = Quantity - (SELECT SUM(quantity) FROM cart WHERE s

我很难根据购物车表中的大小更新库存表中的库存数量

股票

推车

运行代码后,stock表将变成这样

股票

应该是这样的

股票

我的代码

include "db_connect.php";
//update stock quantity
  $stockquery = mysqli_query($connect, "UPDATE stock SET Quantity = Quantity - (SELECT SUM(quantity) FROM cart WHERE size = stock.Size)");

  if(mysqli_query($connect, $stockquery))  
  {  
      echo ' stock Successful';  
  }
  else
  {
      echo ' stock Failed';
  }

输出也是库存失败的

您需要在多个表更新中:

UPDATE stock 
JOIN ( SELECT size, SUM(quantity) quantity
       FROM cart
       GROUP BY size ) total USING (size)
SET stock.quantity = stock.quantity - total.quantity

您需要在多个表更新中执行以下操作:

UPDATE stock 
JOIN ( SELECT size, SUM(quantity) quantity
       FROM cart
       GROUP BY size ) total USING (size)
SET stock.quantity = stock.quantity - total.quantity


到目前为止,您尝试了什么来解决这个问题?你被困在哪里?这与HTML有什么关系?“输出也是库存失败”-您是否尝试过检查这种情况的原因?通常,MySQL在查询时提供错误消息fails@NicoHaase它没有显示你为什么要检查原因?如果使用phpMyAdmin、MySQL workbench或任何其他工具运行该查询,该查询是否正常工作?到目前为止,您尝试了哪些方法来解决该问题?你被困在哪里?这与HTML有什么关系?“输出也是库存失败”-您是否尝试过检查这种情况的原因?通常,MySQL在查询时提供错误消息fails@NicoHaase它没有显示你为什么要检查原因?如果使用phpMyAdmin、MySQL workbench或任何其他工具运行该查询,该查询是否正常工作?这会将我的XS改为3而不是97,将2XL改为5而不是95@MuizYusri哎呀。。很抱歉修好了,行得通。非常感谢你。但输出仍然是库存失败。你知道为什么吗?@MuizYusri请回答一个问题-一个问题。特别是当另一个问题不相关的时候。很抱歉,我是这个社区的新成员。这将我的XS改为3而不是97,2XL改为5而不是95@MuizYusri哎呀。。很抱歉修好了,行得通。非常感谢你。但输出仍然是库存失败。你知道为什么吗?@MuizYusri请回答一个问题-一个问题。特别是当另一个问题不相关的时候。对不起,我是这个社区的新手
| size | quantity |
| -----| ---------|
| XS   | 97       |
| S    | 100      |
| M    | 100      |
| L    | 100      |
| XL   | 100      |
| 2XL  | 95       |
| 3XL  | 100      |
include "db_connect.php";
//update stock quantity
  $stockquery = mysqli_query($connect, "UPDATE stock SET Quantity = Quantity - (SELECT SUM(quantity) FROM cart WHERE size = stock.Size)");

  if(mysqli_query($connect, $stockquery))  
  {  
      echo ' stock Successful';  
  }
  else
  {
      echo ' stock Failed';
  }
UPDATE stock 
JOIN ( SELECT size, SUM(quantity) quantity
       FROM cart
       GROUP BY size ) total USING (size)
SET stock.quantity = stock.quantity - total.quantity