Logic 如何使用PHP购物车申请折扣券

Logic 如何使用PHP购物车申请折扣券,logic,cart,Logic,Cart,我被一辆购物车卡住了, 这是我的问题 A、 B、C是已经添加到我的购物车中的产品,每个产品的价值分别为10美元、15美元和5美元。在for循环中对每个产品进行支付,首先是a,然后是B,依此类推。付款不是一步到位的。如果购物车有5个产品,那么付款将进行5次。这些都是完美的工作: 但是,现在我想用我的购物车grand total申请折扣券,那么我如何处理我的付款流程: 非常抱歉我的英语不好 请提供任何帮助我相信这里的最佳实践是执行以下操作: 计算购物车的总成本,但不处理付款 totalCost =

我被一辆购物车卡住了, 这是我的问题

A、 B、C是已经添加到我的购物车中的产品,每个产品的价值分别为10美元、15美元和5美元。在for循环中对每个产品进行支付,首先是a,然后是B,依此类推。付款不是一步到位的。如果购物车有5个产品,那么付款将进行5次。这些都是完美的工作:

但是,现在我想用我的购物车grand total申请折扣券,那么我如何处理我的付款流程:

非常抱歉我的英语不好


请提供任何帮助

我相信这里的最佳实践是执行以下操作:

计算购物车的总成本,但不处理付款

totalCost = (all A) + (all B) + (all C)
计算应用优惠券时购物车的总折扣

couponDiscount = 15% (as an example)
discountedPrice = totalCost * (100% - 15%)
将每种产品的折扣价格分开:

discounted price for all of A = discountedPrice * ((all A) / totalCost))
process payment for product "A"

discounted price for all of B = discountedPrice * ((all B) / totalCost)
process payment for product "B"

discounted price for all of C = discountedPrice * ((all C) / totalCost)
process payment for product "C"
这就应该做到了

基本上,所有A/totalCost表示产品A的折扣价格和非折扣价格的百分比。将该百分比乘以折扣价格将得到产品A的调整折扣价格。然后,只需对每个产品重复此过程

希望有帮助!请随意提问