Время срабатывания датчика в виде списка.
Добавлено: Пт мар 02, 2018 9:06 pm
Задача:
Имеется кнопка звонка. Нажатия на кнопку пишутся в историю. требуется вывести на сцену блок с временем когда кто-то нажимал на кнопку в течении суток.
Мои потуги в этом направлении. Как обычно я пошел трудным путем. путь был нелегок, но в итоге имею запрос для базы который выводит дату и время когда значение моей кнопки было 1. Этот запрос я оформил в сценарий SQL2PHP. Получился такой код:
Да, я знаю что в запросе временной диапазон с начала года и далее. в данный момент не это важно, это я знаю как поправить
. При переходе по ссылке /objects/?script=SQL2PHP получается следующее:
Вопрос в том как это отобразить в виде блока на сцене?
Думал вот оно озарение, но потом понял что не все так просто. Понимающие люди уже заметили что я много раз записал в переменную значения и там осталось только последнее.
Скажите, можно ли как-то записать в переменную сразу все результаты? и как потом это показать на сцене?
порывшсь на форуме и в базе знаний наткнулся на HTTP-ссылки для работы с MajorDoMo. Там увидел более элегантное решение извлечение истории /api/history/switch1.status/3days , но к прежней проблеме добавилась ещё одна как преобразовать формат в удобочитаемый? Я так понимаю, что это массив, но как его перевести в строчный вид формата как выше под спойлером?
Ну и в третий раз озвучу свой вопрос:
Каким образом это потом вывести на сцену? Меня интересует именно строчный вариант у не график.
Вероятнее всего я опять нагородил тут лишнего огорода и есть вариант решения куда проще. Буду очень признателен за помошь.
Имеется кнопка звонка. Нажатия на кнопку пишутся в историю. требуется вывести на сцену блок с временем когда кто-то нажимал на кнопку в течении суток.
Мои потуги в этом направлении. Как обычно я пошел трудным путем. путь был нелегок, но в итоге имею запрос для базы который выводит дату и время когда значение моей кнопки было 1. Этот запрос я оформил в сценарий SQL2PHP. Получился такой код:
Код: Выделить всё
$result = SQLSelect("SELECT * FROM `phistory` WHERE `VALUE_ID` = 670 AND `ADDED` >= '2018-01-01' AND `VALUE` LIKE '1' ORDER BY `ADDED` DESC");
foreach ($result as $result)
{
echo $result['ADDED'].' '.$result['VALUE'].'<br>';
}

СпойлерПоказать
2018-02-27 15:41:09 1
2018-02-27 15:33:45 1
2018-02-25 17:06:08 1
2018-02-25 14:20:10 1
2018-02-23 16:46:08 1
2018-02-23 14:43:56 1
2018-02-22 21:26:08 1
2018-02-22 19:10:39 1
2018-02-10 16:26:46 1
2018-02-10 13:30:33 1
2018-02-04 15:18:34 1
2018-02-04 10:33:44 1
2018-02-03 19:08:28 1
2018-02-03 16:33:37 1
2018-02-27 15:33:45 1
2018-02-25 17:06:08 1
2018-02-25 14:20:10 1
2018-02-23 16:46:08 1
2018-02-23 14:43:56 1
2018-02-22 21:26:08 1
2018-02-22 19:10:39 1
2018-02-10 16:26:46 1
2018-02-10 13:30:33 1
2018-02-04 15:18:34 1
2018-02-04 10:33:44 1
2018-02-03 19:08:28 1
2018-02-03 16:33:37 1
Думал вот оно озарение, но потом понял что не все так просто. Понимающие люди уже заметили что я много раз записал в переменную значения и там осталось только последнее.
Код: Выделить всё
foreach ($result as $result)
{
sg("ThisComputer.Zvonok",$result['ADDED'].' '.$result['VALUE'].'<br>');
}
порывшсь на форуме и в базе знаний наткнулся на HTTP-ссылки для работы с MajorDoMo. Там увидел более элегантное решение извлечение истории /api/history/switch1.status/3days , но к прежней проблеме добавилась ещё одна как преобразовать формат в удобочитаемый? Я так понимаю, что это массив, но как его перевести в строчный вид формата как выше под спойлером?
Код: Выделить всё
{"result":[{"VALUE":"0","ADDED":"2018-02-28 08:03:02"},{"VALUE":"1","ADDED":"2018-02-28 10:28:26"},{"VALUE":"1","ADDED":"2018-02-28 10:28:26"},{"VALUE":"0","ADDED":"2018-02-28 14:13:02"},{"VALUE":"1","ADDED":"2018-02-28 14:13:05"},{"VALUE":"0","ADDED":"2018-02-28 14:13:07"},{"VALUE":"0","ADDED":"2018-03-02 08:00:01"}]}
Каким образом это потом вывести на сцену? Меня интересует именно строчный вариант у не график.
Вероятнее всего я опять нагородил тут лишнего огорода и есть вариант решения куда проще. Буду очень признателен за помошь.