Попытка внедрить поле промо-кода в php для интернет-магазина - PullRequest
1 голос
/ 20 мая 2011

Я пытаюсь создать окно промо-кода в php, чтобы я мог дать людям разные коды для конкретных скидок на товары в моем интернет-магазине.Основная идея состоит в том, чтобы они во время покупки вводили код в коробку для получения купоноподобного эффекта.

Я искал вокруг и не смог найти ничего, касающегося этого или чего-то подобногопохожая природа.Любая помощь будет принята с благодарностью, спасибо!

Ответы [ 2 ]

6 голосов
/ 20 мая 2011

Вот некоторые мои собственные мысли / идеи, которые я использовал для создания купоноподобной системы. Это должно помочь вам начать разработку бэкенда.

  1. Вы хотите (давайте назовем это «Купон»), чтобы иметь возможность быть привязаны к конкретным предметам или нет, как а также иметь способность быть привязанным Категории товаров (несколько элементы).
  2. Купон должен быть в состоянии определить либо установленное количество или набор процент от любой части промежуточный итог или весь к югу от общего числа.
  3. Налог должен быть рассчитан исходя из предварительной скидки до итога. Вы можете решили сделать это по-другому, но это точка принятия решения.
  4. У вас должна быть возможность указать дату начала и дату окончания купона.
  5. У вас должна быть возможность отслеживать использование купона по элементам и по пользователям. Если у вас есть абстрактные группы пользователей, вы также можете отслеживать группы пользователей.
  6. Вы должны иметь возможность требовать другие предметы в купоне, которые не обесцениваются, чтобы получить скидку на другие товары. (Buy This Get That Half Off типы сделок)
  7. У вас должно быть возможность определить минимальное количество элементов, пока купон не вступит в силу (купите 3 шины, получите четвертый бесплатный!), А также максимальное количество раз, которое это может быть применено (вы можете не захотеть: покупать 30 шин - 10 шин бесплатно!)
  8. Вы можете принять решение ограничить определенные купоны определенным пользователем или группой пользователей. Вам нужно будет найти способ применить это ограничение, если вы это сделаете.

Просто чтение этого приводит меня к минимуму 3 таблицам:

Coupons, Item_Coupons, User_Coupons

Где Item_Coupons и User_Coupons сопоставляют ваши таблицы для Предметов и Пользователей с Купонами. Вы также можете включить другие таблицы, которые могут упростить задачу, например, Coupons_RequiredItems, представляющий собой другую карту из Купонов, для элементов, определяющих необходимые элементы для купона. Структура этих таблиц сильно зависит от того, как именно вы собираетесь это реализовать.

Конечно, если ваше единственное намерение состоит в том, чтобы предоставить X% от отдельного Предмета, то выполнение этого будет слишком сложным, но гораздо более гибким.

1 голос
/ 20 мая 2011

Плохой способ:

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;
}

Лучше было бы сохранить код сопоставления -> скидка где-нибудь в базе данных и прочитать его оттуда.

...