Статистика кода купона - PullRequest
       2

Статистика кода купона

20 голосов
/ 22 ноября 2011

У меня есть система, которая позволяет пользователям вводить купоны (например, как Dell или Amazon)

Я хочу знать, сколько купонов было использовано, поэтому через 500 раз купон больше не действителен.

Сейчас я думаю о том, чтобы вставить купон в таблицу, а затем select count(*), а если он достигнет 50, я не вставлю и верну сообщение о том, что срок его действия истек.

Я думаю, что это решение работает, но я хотел проверить и, возможно, проверить, есть ли лучший способ сделать это.

Ответы [ 2 ]

21 голосов
/ 22 ноября 2011

Я предполагаю, что у вас есть купоны, хранящиеся в некоторой таблице с кодом, описанием и т. Д., И т. Д. Добавьте столбец num_used и увеличивайте его при каждом использовании купона. Таким образом, вы все равно можете вставить купон в заказы, если это необходимо, но вам не нужно делать подсчеты. Вы просто проверяете, сколько раз оно уже использовалось при загрузке информации о вашем купоне. Я предполагаю, что вы все равно проверяете действительность по коду купона, поэтому добавьте еще один раз.

0 голосов
/ 22 ноября 2011

Вы можете «прикрепить» код купона к одному заказу.

Пример (для вас таблица заказов mysql): заказ ABC использовать купон «Coupon1» заказ BCD использовать купон «Coupon1»

И затем, да, вы можете использовать функцию, подобную этой:

function getCouponUsage($a_couponCode){
  $res = mysql_query("SELECT couponCode FROM orders WHERE coupon = '$a_couponCode'") or die(mysql_error());
  return mysql_num_rows($res);
}

Эта функция будет возвращать целое число.Просто сравните с вашим лимитом.

Вы также можете установить счетчик посещений.Допустим, купон может быть использован 500 раз, когда кто-то использует купон, вы удаляете один, так что общая сумма будет 499 (купон может быть использован 499 с этого момента).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...