2015-10-06 5 views
1

Привет Я хочу создать триггер MYSQL, который обновляет таблицу моих пользователей. Мой сценарий таков: у меня есть таблица пользователей, в которой есть поле под названием Баланс. Каждому реселлеру assgins соответствует его пользователям: Да или нет. Теперь, если реселлер устанавливает баланс пользователей в Да, я сохраняю текущую дату и время в базе данных в поле Reset_date. Теперь я хочу рассчитывать с сегодняшнего дня 30 дней и когда 30 дней будет завершено, я хочу обновить баланс пользователя до Итак, с этого дня баланс был установлен на «да», после 30 дней баланс должен быть возвращен на номерКак обновить таблицу с помощью триггера каждые 30 дней?

Я думаю, я также должен использовать CRON JOB, так как у меня есть несколько реселлеров и несколько пользователей. Таким образом, данные сброса различны для каждого из них.

Я имею в виду для user1 дата сброса сегодня, а для другого это может быть другое, поэтому здесь может потребоваться работа cron. Поэтому, пожалуйста, расскажите мне, как использовать эту работу cron.

Ниже мой Структура таблицы для пользователей и Поставщиков:

Reseller

Resellers

Пользователи

users

+0

я думаю, что вы должны запустить CRON каждую полночь, чтобы проверить, если дата превышает 30 дней. если yos вы можете обновить до 'No' –

+0

@NiranjanNRaju Спасибо, но можем ли мы добавить триггер для работы cron? – Rajan

+0

, вы должны установить на своем сервере –

ответ

1

Trigger a cron job.

  • Вы должны написать функцию в контроллере, чтобы делать то, что вам требуется (изменение yes к no если дата превышает 30 дней.
  • Вы должны убедиться, что вы контроллер Funtion не имеет сессии, связанные с это.

Я добавил следующие изображения, смотрите их

enter image description here

Я добавил cron, который работает один раз в день. и на вашем сервере это выглядит так.

enter image description here

+0

который является этим интерфейсом для добавления этого задания cron ??? – Rajan

+0

интерфейс ?? Я тебя не понял. –

+0

Я использую CENTOS в качестве моего сервера, и где я могу найти эти настройки? – Rajan

1

Ваше предположение об использовании хрон верно. Вы можете запустить задание Кукурузного каждую полночь, используя следующий формат:

0 0 0 1/1 * ? * 

В своей работе, вы можете проверить записи с датами, которые 30 дней старыми и назначаются ДА. Затем вы можете обновить эти записи и присвоить статус NO

+0

Спасибо, но можете ли вы отправить сообщение, как добавить это в работу cron? я имею в виду, можно добавить триггер для работы cron? – Rajan

+0

NOW() - ИНТЕРВАЛ 1 МЕСЯЦ или NOW() - ИНТЕРВАЛ 30 ДЕНЬ использовать это в запросе для выборки 30 дней старых записей –

+0

, когда я добавить баланс = Да я это сделать: \t $ this-> db-> set ('reset_date', unix_to_human (strtotime ("+ 30 дней"))); – Rajan

Смежные вопросы