Перейти к содержимому


Автоматический сброс значения с периодом в один месяц

значение сброс

Сообщений в теме: 6

#1 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 18 Май 2014 - 09:46

Здравствуйте!

У меня такой вопрос. Есть поле Карточка (список) с четырьмя значениями - Свободна, Связана, Неактивна, Неоплачена.
Нужно вычисление - в 0 часов 1-го числа каждого месяца значение сбрасывается в базе данных на Неоплачена. Не при загрузке страницы, а именно в ячейке БД.
Есть ли какое то решение без зависимости от Cron?..

Сообщение отредактировал All_ex74: 18 Май 2014 - 10:22


#2 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 19 Май 2014 - 07:29

Применил такое вычисление:


$lines = data_table("Исполнители", "status=0", "all");
foreach ($lines as $data)
{
  $data['Карточка'] = "Неоплачена";
  update_query ($data, "Исполнители", "id=".$data['ID']);
}


Всё работает, но хотелось бы не задействовать Cron. Есть ли альтернативное решение?

Сообщение отредактировал All_ex74: 19 Май 2014 - 07:30


#3 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 19 Май 2014 - 08:02

Каким образом то вы хотите поменять значение в БД без загрузки страницы и одновременно без крона? Такое в принципе невозможно. Скрипт вызывается либо в браузере, либо автоматом по крону.

#4 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 19 Май 2014 - 08:58

Просмотр сообщенияCbCoder (19 Май 2014 - 08:02) писал:

Каким образом то вы хотите поменять значение в БД без загрузки страницы и одновременно без крона? Такое в принципе невозможно. Скрипт вызывается либо в браузере, либо автоматом по крону.

Понятно, очень жаль...

Ещё 2 вопроса:

1. Напоминания появляются спустя минуту, это и понятно ведь настройки Cron - * * * * * . Соответственно вычисление для вывода напоминаний (form_tips();) срабатывает через минуту. Как сделать вывод напоминаний сразу же?
2. При добавлении новой записи в таблицу через внешнюю форму или при обращении со стороннего скрипта к базе, увидеть эту запись можно только после перезагрузки страницы вручную. Есть ли какое то решение динамического обновления страницы после добавления записи? Понятно что PHP не Ajax, но может можно какое нибудь вычисление привязать к таблице...

Сообщение отредактировал All_ex74: 19 Май 2014 - 09:01


#5 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 19 Май 2014 - 09:24

1. Пока никак, но мы планируем изменить движок системы напоминаний, в частности вызов напоминаний по событиям (аналогично вычислениям), в этом случае напоминания будут вызываться сразу же после наступления условия, без минутной задержки.
2. Для этого как раз и нужен ajax, с постоянными запросами на сервер на предмет проверки обновления базы. Сам сервер не может никак воздействовать на ваш браузер и обновить принудительно страницу, классический веб работает только в одну сторону, с вызовом со стороны клиента на сервер, но не наоборот.

#6 All_ex74

    Активный участник

  • Пользователи
  • PipPipPip
  • 138 сообщений
  • Пол:Мужчина
  • Город:Барнаул

Отправлено 19 Май 2014 - 10:25

Просмотр сообщенияCbCoder (19 Май 2014 - 09:24) писал:

1. Пока никак, но мы планируем изменить движок системы напоминаний, в частности вызов напоминаний по событиям (аналогично вычислениям), в этом случае напоминания будут вызываться сразу же после наступления условия, без минутной задержки.
2. Для этого как раз и нужен ajax, с постоянными запросами на сервер на предмет проверки обновления базы. Сам сервер не может никак воздействовать на ваш браузер и обновить принудительно страницу, классический веб работает только в одну сторону, с вызовом со стороны клиента на сервер, но не наоборот.

Это очень неудобно и работает против КБ. Когда планируете внести перечисленные изменения?..

#7 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 19 Май 2014 - 10:42

Что именно неудобно? Второй пункт - это ограничение самой технологии в ее классическом виде, мы конечно можем засунуть во все таблицы ajax для отслеживания обновления данных, но это весьма спорный момент, не всем нужно, а трафик по сети при этом сильно возрастет. Пока даже не думали об этом всерьез (хотя теоретически и можем добавить в будущем в виде опции). По первому пункту уже сказал что планируем реализацию, но точные сроки вам никто не назовет, даже руководство, а тем более рядовой программист, типа меня. Думаю, 90%, что в этом году.





Количество пользователей, читающих эту тему: 2

0 пользователей, 2 гостей, 0 анонимных