Задать вопрос
@gaga31

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

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

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

Думаю делать так, но не очень уверен в верности решения
1) Получаю массив ids всех просмотренных баннеров
2) В таблицу с баннерами sql where not in
  • Вопрос задан
  • 124 просмотра
Подписаться 1 Средний 13 комментариев
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фулстек-разработчик
    16 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Хекслет
    Fullstack-разработчик на Node.js
    16 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@rPman
Добавьте в таблицу баннеров пользователям поле - время показа, при показе обновлять это поле на текущее время.

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

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

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

Похожие вопросы