@gaga31

Как сделать систему баннеров?

Здравствуйте. В базе есть 5000 баннеров.
При заходе на страницу показывается 1 из них и записывается в бд, username, banner_id, date. Дальше нужно показать 2-ой баннер, а уже просмотренные не показывать (через 24 часа таблица чистится кроном)

Как можно реализовать выборку не просмотреного баннера?

Думаю делать так, но не очень уверен в верности решения
1) Получаю массив ids всех просмотренных баннеров
2) В таблицу с баннерами sql where not in
  • Вопрос задан
  • 120 просмотров
Пригласить эксперта
Ответы на вопрос 1
@rPman
Добавьте в таблицу баннеров пользователям поле - время показа, при показе обновлять это поле на текущее время.

Запрос на случайный баннер - условие фильтрации дата показа меньше начала сегодняшнего дня.

В итоге, не придется ежедневно обновлять всю баузу, сбрасывая показы. Так же бонусом можете менять интервал сброса (например каждую неделю или каждый час, не важно, это просто меняется дата в условии фильтрации)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы