Я хочу создать простое управление учетными записями на основе PHP и MySQL. Мне нужно отслеживать определенные типы учетных записей пользователей и длину подписки. Я хочу, чтобы пользователь мог выбрать «пакет подписки» (бронза, серебро, золото) и время (одна неделя, один месяц, год), он хочет, чтобы его подписка продолжалась.Управление учетными записями с помощью PHP и MySQL, добавление Timespan?
Однако более высокие номинальные подписки (золото> серебро> бронза) должны иметь приоритет над более низкими номинальными. Это означает, что если у пользователя должна быть как серебряная, так и золотая подписка, то время, затрачиваемое на золотую подписку, очевидно, должно быть использовано в первую очередь, и только когда оно закончилось, следует использовать серебряный.
Для сохранения подписки внутри, я создал таблицу:
INT id
INT user_id
INT type
DATETIME start
DATETIME end
Мой вопрос: Как я могу узнать, если учетная запись пользователя имеет действующую подписку на определенный момент времени и какой тип, что подписка является? Самое главное, мне было бы интересно, как динамически добавлять дополнительные подписки, когда уже существует одна подписка на runnnig.
Более точный пример:
- пользователь покупает 5 дней бронзы в день 1 -> Подписка на "бронзу" работает с первого дня 1-5.
- на 2-й день пользователь решает, что хочет «серебро» дополнительно и покупает еще 5 дней с этого
- ситуация сейчас: бронза (день 1), серебро (дни 2-6), бронза (дни 7-10)
Предпочтительно, я хотел бы выполнить большую часть работы внутри MySQL-запроса, но я не уверен, что это вообще возможно. Если все остальное не удастся, мне придется вернуться к PHP.
Спасибо за ваше время!
Большое спасибо за этот ответ! Извините, что не сообщал ранее, но я попробую в эти выходные и дам вам отзывы :) – Weaz