2

我正在尝试在 php 中制作一个促销代码框,这样我就可以为人们提供不同的代码,以获得我在线商店中商品的特定折扣。基本想法是让他们在购买时将代码输入框中,以获得类似优惠券的效果。

我一直在四处寻找,但找不到任何关于这个或类似性质的东西。任何帮助将不胜感激,谢谢!

4

2 回答 2

7

以下是我用来创建类似优惠券的系统的一些想法/想法。这应该有助于您开始设计后端。

  1. 您希望(我们称之为“优惠券”)能够绑定到特定项目或不绑定到特定项目,并且能够绑定到项目类别(多个项目)。
  2. 优惠券应该能够定义小计的一部分或整个小计的设定金额或设定百分比。
  3. 税款应根据折扣前的小计计算。您可以选择另一种方式,但这是需要考虑的决策点。
  4. 您应该能够指定优惠券的开始日期和结束日期。
  5. 您应该能够按项目和用户跟踪优惠券的使用情况。如果您有抽象的用户组,那么您也应该能够按用户组进行跟踪。
  6. 您应该能够要求优惠券中未打折的其他物品以获得其他物品的折扣。(购买This减半That的交易类型)
  7. 在优惠券生效之前,您应该能够定义物品的最小数量(购买 3 个轮胎获得第 4 个免费!),以及可以应用的最大次数(您可能不希望:购买 30 个轮胎获得10 个轮胎免费!)
  8. 可以决定将某些优惠券限制为特定用户或用户组。如果您这样做,您将需要找到一种方法来执行此限制。

仅仅阅读这篇文章,我就会看到至少 3 张桌子:

Coupons, Item_Coupons,User_Coupons

将物品和用户的表格映射到优惠券的位置Item_Coupons和映射。User_Coupons您还可以包含其他可能使事情变得更容易的表格,例如Coupons_RequiredItems哪个是从优惠券到定义优惠券所需物品的物品的另一个映射。这些表的结构在很大程度上取决于您打算如何实现它。

当然,如果您的唯一目的是为单个商品提供 X% 的折扣,那么遵循这将过于复杂,但更加灵活。

于 2011-05-20T11:58:30.597 回答
1

坏方法:

switch($_GET['code']) {
  case "foo":
    $price -= $price * 0.1;
    break;
  case "bar":
    $price -= $price * 0.25;
    break;
  case "baz":
    $price -= $price * .33;
    break;
  default:
    break;
}

最好将映射代码 -> 折扣存储在数据库中的某个位置并从那里读取。

于 2011-05-20T11:22:44.483 回答