Страница 1 из 2
Как редактировать Web-переменную
Добавлено: Чт окт 10, 2013 4:52 pm
Antonq
Парсится погода в таком виде +0,1 или −1,5
Нужно заменить запятую и −
Если ставить код на изменение
$value=$params['VALUE'];
$temp=str_replace(',','.',$value);
setGlobal('ThisComputer.TempOutside',$temp);
То он все равно не срабатывает(пока пытаюсь хоть запятую заменить)
Re: Как редактировать Web-переменную
Добавлено: Чт окт 10, 2013 7:55 pm
LutsenkoDenis
А так?
Код: Выделить всё
$temp = str_replace("−","-",str_replace(",", ".", $value));
Re: Как редактировать Web-переменную
Добавлено: Чт окт 10, 2013 8:39 pm
Antonq
Да дело не в этом, сам сприкт не отрабатывает в том месте.
То есть он должен стоять где-то после спарсивания, но до присвоения глобальной переменной)
Re: Как редактировать Web-переменную
Добавлено: Пт окт 11, 2013 12:02 am
LutsenkoDenis
Antonq писал(а):Парсится погода в таком виде +0,1 или −1,5
Нужно заменить запятую и −
Если ставить код на изменение
Код: Выделить всё
$value = $params['VALUE'];
$temp = str_replace(',','.',$value);
setGlobal('ThisComputer.TempOutside',$temp);
То он все равно не срабатывает(пока пытаюсь хоть запятую заменить)
Ну я тогда что-то не понимаю...короче, вот код(см. ниже). Вставляй его и смотри лог и или вывод в браузер. Расскажи потом что не так.
Код: Выделить всё
// Парсится погода в таком виде +0,1 или −1,5
// Нужно заменить запятую и −
// $value = "−1,5"; // данные для теста
// DemMes - запись в лог файл, echo - вывод в браузер (ненужное закоментировать)
// переменная которую надо обработать
$value = $params['VALUE'];
DebMes("1. значение переменной = " . $value);
echo "1. значение переменной = " . $value;
if (isset($value)) // проверяем есть ли у нас чтото в этой переменной
{
// результат обработки переменной
$temp = str_replace("−","-",str_replace(",", ".", $value));
DebMes("2. обработанное значение переменной = " . $temp);
echo "2. обработанное значение переменной = " . $temp;
// запись переменной в глобал
setGlobal('ThisComputer.TempOutside',$temp);
DebMes("3. записали в глобальную переменную");
echo "3. записали в глобальную переменную";
}
else
{
DebMes("4. переменная не содержит значений, т.е. не существует");
echo "4. переменная не содержит значений, т.е. не существует";
}
Re: Как редактировать Web-переменную
Добавлено: Пт окт 11, 2013 8:24 am
Antonq
Да все верное, где этот скрипт вставлять то?
Я пробовал в коде на изменение
Re: Как редактировать Web-переменную
Добавлено: Пт окт 11, 2013 11:38 am
LutsenkoDenis
ну, я так понимаю что там где парсится погода.
Re: Как редактировать Web-переменную
Добавлено: Пт окт 11, 2013 3:28 pm
Antonq
11.10.2013 19:24:31
1. znachenie peremennoy= −1,8
11.10.2013 19:24:31
2. obrabotannoe znachenie peremennoy = -1.8
11.10.2013 19:24:31
3. zapisali globalnuu peremennuu
Там с русским проблемы, я на транслит перевел все
Получается он отрабатывает, но переменная все равно в итоге остается со старым значением
Re: Как редактировать Web-переменную
Добавлено: Пт окт 11, 2013 3:31 pm
Antonq
Я кажется понял в чем дело, она изменилась, скрипт отработал, потом он опять ее грабит, а она не изменилась и ставит снова старое значение, так может быть?
Re: Как редактировать Web-переменную
Добавлено: Пт окт 11, 2013 3:47 pm
LutsenkoDenis
Вот уж не знаю...
На мой взгляд, если значение не изменилось, то и незачем его переписывать.
Можешь скинуть целиком описание. Ну как, что и куда ты вставляешь, откуда погоду берешь(если конечно не с датчика

), по какому событию вставляешь. А я домой вернусь и попробую воспроизвести у себя.
Re: Как редактировать Web-переменную
Добавлено: Пт окт 11, 2013 3:53 pm
Antonq
с ngs.ru
Погода<\/a><\/strong>\: (.+?) °
связанный объект - ThisComputer.TempOutside (может его не указывать?)
Код: Выделить всё
// Парсится погода в таком виде +0,1 или −1,5
// Нужно заменить запятую и −
// $value = "−1,5"; // данные для теста
// DemMes - запись в лог файл, echo - вывод в браузер (ненужное закоментировать)
// переменная которую надо обработать
$value = $params['VALUE'];
DebMes("1. znachenie peremennoy= " . $value);
echo "1. znachenie peremennoy = " . $value;
if (isset($value)) // проверяем есть ли у нас чтото в этой переменной
{
// результат обработки переменной
$temp = str_replace("−","-",str_replace(",", ".", $value));
DebMes("2. obrabotannoe znachenie peremennoy = " . $temp);
echo "2. obrabotannoe znachenie peremennoy = " . $temp;
// запись переменной в глобал
setGlobal('ThisComputer.TempOutside',$temp);
DebMes("3. zapisali globalnuu peremennuu");
echo "3. zapisali globalnuu peremennuu";
}
else
{
DebMes("4. peremennaya ne soderjit znacheniy , ne sushestvuet");
echo "4. peremennaya ne soderjit znacheniy , ne sushestvuet";
}