разложить веб переменую

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

avgaz
Сообщения: 39
Зарегистрирован: Пт дек 11, 2015 10:20 pm
Благодарил (а): 1 раз
Поблагодарили: 4 раза

разложить веб переменую

Сообщение avgaz » Вс дек 13, 2015 5:25 pm

Здравствуйте, в сети есть страничка к примеру тут http://192.168.0.55/stats.html которая отдает данные в таком виде 90.50,78.00,44.00,51.50,83.50,-1.00,245.25,nan,1,0,1.10
Подскажите как её разложить в переменные что бы данные после каждой "," можно было выводит на схему?
Аватара пользователя
savenko_egor
Сообщения: 705
Зарегистрирован: Вс авг 03, 2014 8:17 pm
Откуда: Украина, Запорожье
Благодарил (а): 108 раз
Поблагодарили: 147 раз
Контактная информация:

Re: разложить веб переменую

Сообщение savenko_egor » Вс дек 13, 2015 11:17 pm

Вам поможет функция explode.
avgaz
Сообщения: 39
Зарегистрирован: Пт дек 11, 2015 10:20 pm
Благодарил (а): 1 раз
Поблагодарили: 4 раза

Re: разложить веб переменую

Сообщение avgaz » Пн дек 14, 2015 1:01 am

как разобрать строку с помощью php я знаю например так

Код: Выделить всё

$bufft = file_get_contents('http://192.168.0.55');
$exp = explode(",", $bufft);
$data0 = substr($exp[0], 0, 5);// котел
$data1 = substr($exp[1], 0, 5);// подача в котел
$data2 = substr($exp[2], 0, 5);// 
$data3 = substr($exp[3], 0, 5); //подача в дом
$data4 = substr($exp[4], 0, 5); // ТА
$data5 = substr($exp[5], 0, 5); // Улица
$data6 = substr($exp[6], 0, 5); // термопара1
$data7 = substr($exp[7], 0, 5); // термопара2
$data8 = substr($exp[8], 0, 5); // значение реле вкл 0 выкл 1
$data9 = substr($exp[9], 0, 5); // значение реле дома вкл 0 выкл 1
$data10 = substr($exp[10], 0, 5); // давление 
Я не могу понять как к примеру переменные из php вывести на сцену?
Аватара пользователя
savenko_egor
Сообщения: 705
Зарегистрирован: Вс авг 03, 2014 8:17 pm
Откуда: Украина, Запорожье
Благодарил (а): 108 раз
Поблагодарили: 147 раз
Контактная информация:

Re: разложить веб переменую

Сообщение savenko_egor » Пн дек 14, 2015 1:02 am

echo $data0;

Или в своём скрипте указываете так: "setGlobal("Object.Property",$value); -- установка значения свойства объекта" и потом выводите где Вам нужно значение Object.Property.
avgaz
Сообщения: 39
Зарегистрирован: Пт дек 11, 2015 10:20 pm
Благодарил (а): 1 раз
Поблагодарили: 4 раза

Re: разложить веб переменую

Сообщение avgaz » Пн дек 14, 2015 1:06 am

А куда мне этот php вставлять? если не сложно можно пример как это делается
Аватара пользователя
savenko_egor
Сообщения: 705
Зарегистрирован: Вс авг 03, 2014 8:17 pm
Откуда: Украина, Запорожье
Благодарил (а): 108 раз
Поблагодарили: 147 раз
Контактная информация:

Re: разложить веб переменую

Сообщение savenko_egor » Пн дек 14, 2015 1:08 am

Можете создать сценарий и вызывать его когда Вам удобно и как Вам удобно. Сценарии
avgaz
Сообщения: 39
Зарегистрирован: Пт дек 11, 2015 10:20 pm
Благодарил (а): 1 раз
Поблагодарили: 4 раза

Re: разложить веб переменую

Сообщение avgaz » Пн дек 14, 2015 1:25 am

Пробую так, создаю сценарий например под название kotelnay вставляю туда php этот

Код: Выделить всё

$bufft = file_get_contents('http://192.168.0.55/stats.html');
$exp = explode(",", $bufft);
$data0 = substr($exp[0], 0, 5);// котел
$data1 = substr($exp[1], 0, 5);// подача в котел
$data2 = substr($exp[2], 0, 5);// 
$data3 = substr($exp[3], 0, 5); //подача в дом
$data4 = substr($exp[4], 0, 5); // ТА
$data5 = substr($exp[5], 0, 5); // Улица
$data6 = substr($exp[6], 0, 5); // термопара1
$data7 = substr($exp[7], 0, 5); // термопара2
$data8 = substr($exp[8], 0, 5); // значение реле вкл 0 выкл 1
$data9 = substr($exp[9], 0, 5); // значение реле дома вкл 0 выкл 1
$data10 = substr($exp[10], 0, 5); // давление

setGlobal("Object.Property",$data5); 
Далее прописываю в "Объектах" класс "Timer", объект "ClockChime", в нем метод "onNewMinute" в конец приписываю RunScript('kotelnay'); что бы запускать раз в минуту.
После на сцене создаю информер с содержимым %Object.Property% в результате получаю просто 0
Аватара пользователя
savenko_egor
Сообщения: 705
Зарегистрирован: Вс авг 03, 2014 8:17 pm
Откуда: Украина, Запорожье
Благодарил (а): 108 раз
Поблагодарили: 147 раз
Контактная информация:

Re: разложить веб переменую

Сообщение savenko_egor » Пн дек 14, 2015 1:29 am

"0" в смысле значение "0" или ничего не получаете?
Если значение "0", значит сделайте отладку скрипта. например так:

Код: Выделить всё

$bufft = file_get_contents('http://192.168.0.55/stats.html');
$exp = explode(",", $bufft);
$data0 = substr($exp[0], 0, 5);// котел
$data1 = substr($exp[1], 0, 5);// подача в котел
$data2 = substr($exp[2], 0, 5);// 
$data3 = substr($exp[3], 0, 5); //подача в дом
$data4 = substr($exp[4], 0, 5); // ТА
$data5 = substr($exp[5], 0, 5); // Улица
$data6 = substr($exp[6], 0, 5); // термопара1
$data7 = substr($exp[7], 0, 5); // термопара2
$data8 = substr($exp[8], 0, 5); // значение реле вкл 0 выкл 1
$data9 = substr($exp[9], 0, 5); // значение реле дома вкл 0 выкл 1
$data10 = substr($exp[10], 0, 5); // давление

say($data5);
Ну и смотрите что в чате будет, ну или что Алиса скажет, если звук настроен.
avgaz
Сообщения: 39
Зарегистрирован: Пт дек 11, 2015 10:20 pm
Благодарил (а): 1 раз
Поблагодарили: 4 раза

Re: разложить веб переменую

Сообщение avgaz » Пн дек 14, 2015 1:35 am

В чате Алиса нормальные данные пишет, а вот на сцене 0 показывает, даже если на сцену выводит тип html с кодом %Object.Property% то 0 показывает все равно((
Последний раз редактировалось avgaz Пн дек 14, 2015 1:37 am, всего редактировалось 1 раз.
Аватара пользователя
savenko_egor
Сообщения: 705
Зарегистрирован: Вс авг 03, 2014 8:17 pm
Откуда: Украина, Запорожье
Благодарил (а): 108 раз
Поблагодарили: 147 раз
Контактная информация:

Re: разложить веб переменую

Сообщение savenko_egor » Пн дек 14, 2015 1:37 am

Проверяйте, значит что-то не так указали.
Последний раз редактировалось savenko_egor Пн дек 14, 2015 1:39 am, всего редактировалось 3 раза.
Ответить