Этот вопрос закрыт для ответов, так как повторяет вопрос Как сделать бонус каждые 24 часа?
PINTAGON
@PINTAGON
Веб разработчик

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

Все привет!
Как сделать бонус каждую минуту? Тоисть в базе есть поле bonus, если он 1, то у кого 1 им каждую минут прибаалять 1, у кого нет, то нечего не делать им
  • Вопрос задан
  • 167 просмотров
Ответы на вопрос 3
@oleg_ods
Добавить в базу время начала начисления бонуса и при запросе значения бонуса вычислять разницу в минутах между текущим временем и временем начала начисления.
Ответ написан
WebDev2030
@WebDev2030
Битриксоид до мозга и костей
Нужно написать скрипт который:
1. Получает из базы всех у кого bonus=1 и его значение bonus
2. Пробегает по полученному списку, строить запрос на добавление 1 к bonus.
Запускаешь этот скрипт через cron каждую минут (*/1 * * * *).
Ответ написан
xEpozZ
@xEpozZ
Веб-разработчик
Если система Linux, то сначала открываем конфиг CRON'а командой
$ crontab -e
Дописываем в самый низ строку
* * * * * php /path/to/project/cron/add_bonus.php
где /path/to/project - путь к проекту, а cron/add_bonus.php путь к скрипту.
в скрипте обновление:
$connection = ...; // открываем коннекшн к БД
try{
    $connection->query("UPDATE users_bonus SET bonus_amount = `bonus_amount` + 1 WHERE has_bonus = 1");
} catch (\Exception $e) {
    $this->log((string)$e);
    return 1;
}

return 0;


return 1; - говорим, что команда завершилась с ошибкой
return 0; - говорим, что команда завершилась успешно
https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%B4_%...
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы