Курс доллара

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

Модератор: immortal

LutsenkoDenis
Сообщения: 521
Зарегистрирован: Вс апр 07, 2013 9:30 pm
Откуда: Moscow
Благодарил (а): 2 раза
Поблагодарили: 58 раз
Контактная информация:

Re: Курс доллара

Сообщение LutsenkoDenis » Пн апр 28, 2014 1:34 pm

Как мне кажется, тут нет людей которые за вас будут делать что-либо, если конечно им это не будет тоже необходимо.
Но это моё имхо.

Касаемо скиллов поиска и т.д... вот мой пример. В нём есть комментарии почти к каждой строке. И там можно увидеть как поменять дату на +1 день. Логично предположить что аналогичным способом можно поменять на -1 день.

В вашем примере моно сделать так:

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

$cursDate = date('d/m/Y', strtotime("-1 days"));
$file = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp?date_req=" . $cursDate); 
В любом случае, посмотрите в сторону того, когда и каким образом центробанк меняет курсы валют.
________________________________________________________
Majordomo (GitHub) на HP Microserver Gen8. OS Debian Stretch
PAV
Сообщения: 949
Зарегистрирован: Пт дек 06, 2013 11:30 am
Откуда: Москва
Благодарил (а): 68 раз
Поблагодарили: 94 раза

Re: Курс доллара

Сообщение PAV » Пн апр 28, 2014 2:06 pm

Супер, спасибо, попробую.

За меня не надо делать. Надо делать для себя и (бросать в воду) выкладывать на форум ;)
LutsenkoDenis
Сообщения: 521
Зарегистрирован: Вс апр 07, 2013 9:30 pm
Откуда: Moscow
Благодарил (а): 2 раза
Поблагодарили: 58 раз
Контактная информация:

Re: Курс доллара

Сообщение LutsenkoDenis » Пн апр 28, 2014 2:32 pm

Ну мне-то это как раз курсы из прошлого и не нужны :) Нужно только сегодня и завтра.
________________________________________________________
Majordomo (GitHub) на HP Microserver Gen8. OS Debian Stretch
PAV
Сообщения: 949
Зарегистрирован: Пт дек 06, 2013 11:30 am
Откуда: Москва
Благодарил (а): 68 раз
Поблагодарили: 94 раза

Re: Курс доллара

Сообщение PAV » Пн апр 28, 2014 2:42 pm

Это я не про вас, это я вообще ;) А блок курсов домучаю - выложу. Сейчас в командировке, времени нет
Ivan
Сообщения: 1473
Зарегистрирован: Сб окт 12, 2013 11:03 pm
Благодарил (а): 49 раз
Поблагодарили: 327 раз

Re: Курс доллара

Сообщение Ivan » Пн апр 28, 2014 4:02 pm

Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
PAV
Сообщения: 949
Зарегистрирован: Пт дек 06, 2013 11:30 am
Откуда: Москва
Благодарил (а): 68 раз
Поблагодарили: 94 раза

Re: Курс доллара

Сообщение PAV » Ср июн 11, 2014 9:36 am

Моя финальная версия, всем спасибо.

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

say("обновление курсов валюты");
$file = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp?date_req=".date("d/m/Y"));
$xml = $file->xpath("//Valute[@ID='R01235']");
$valute = strval($xml[0]->Value);
$dollar = str_replace(",",".",$valute);

$olddate = date('d/m/Y', strtotime("-1 days"));
$file2 = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp?date_req=" . $olddate);
$xml2 = $file2->xpath("//Valute[@ID='R01235']");
$valute2 = strval($xml2[0]->Value);
$dollar2 = str_replace(",",".",$valute2);

if ($dollar>$dollar2){
sg("USD.direction","2");
} elseif ($dollar<$dollar2){
sg("USD.direction","1");
} else {
sg("USD.direction","0");
}
$delta = $dollar-$dollar2;
sg("USD.delta",number_format($delta, 2)); 
sg("USD.data_old",$dollar2); 
sg("USD.data",$dollar); 
sg("USD.updatedTime", date("y-m-d H:i"));

//EUR

$file3 = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp?date_req=".date("d/m/Y"));
$xml3 = $file3->xpath("//Valute[@ID='R01239']");
$valute3 = strval($xml3[0]->Value);
$eur = str_replace(",",".",$valute3);

$olddate4 = date('d/m/Y', strtotime("-1 days"));
$file4 = simplexml_load_file("http://www.cbr.ru/scripts/XML_daily.asp?date_req=" . $olddate4);
$xml4 = $file4->xpath("//Valute[@ID='R01239']");
$valute4 = strval($xml4[0]->Value);
$eur2 = str_replace(",",".",$valute4);
if ($eur>$eur2){
sg("EUR.direction","2");
} elseif ($eur<$eur2){
sg("EUR.direction","1");
} else {
sg("EUR.direction","0");
}
$delta2 = $eur-$eur2;
sg("EUR.delta",number_format($delta2, 2)); 
sg("EUR.data_old",$eur2); 
sg("EUR.data",$eur); 
sg("EUR.updatedTime", date("y-m-d H:i"));

За это сообщение автора PAV поблагодарили (всего 2):
tsember (Пт апр 10, 2015 1:37 am) • Alexiy2 (Чт мар 24, 2016 11:34 am)
Рейтинг: 2.33%
Ruslan
Сообщения: 37
Зарегистрирован: Чт апр 09, 2015 7:11 pm
Благодарил (а): 7 раз
Поблагодарили: 1 раз

Re: Курс доллара

Сообщение Ruslan » Чт апр 09, 2015 7:21 pm

Здравствуйте,
Прошу помощи у знатоков:
не могу запустить код

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

$file = simplexml_load_file("http://www.boi.org.il/currency.xml?curr=01");
if (!$file) // если нет файла
{
  DebMes("CBR error");
  return;
}
$xml = $file->xpath("/CURRENCY");
$valute = strval($xml[0]->RATE);
$dollar = str_replace(",",".",$valute);

setGlobal('Exchange Rates.USD.Rate', $valute);


Debmes("Value: ".$valute);

Пример кода взял из этой ветки, т.к. в обоих случая в ответ приходит xml.
В моем случае xml очень короткий и лишней информации нет, но получить результат не получается :( .
Подскажите что не так.
RaspBerry Pi 2 | MajorDoMo lastUpdate:27/04/2017
dmw
Сообщения: 469
Зарегистрирован: Вт мар 12, 2013 1:22 am
Благодарил (а): 41 раз
Поблагодарили: 81 раз

Re: Курс доллара

Сообщение dmw » Пт апр 10, 2015 7:29 am

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

setGlobal('Exchange Rates.USD.Rate', $valute); 
Заменить на:

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

setGlobal('USD.Rate', $dollar); 
Ruslan
Сообщения: 37
Зарегистрирован: Чт апр 09, 2015 7:11 pm
Благодарил (а): 7 раз
Поблагодарили: 1 раз

Re: Курс доллара

Сообщение Ruslan » Пт апр 10, 2015 10:17 am

Я вообще данных не получаю. Переменная $valute пустая. Это видно в Debmes.
RaspBerry Pi 2 | MajorDoMo lastUpdate:27/04/2017
LutsenkoDenis
Сообщения: 521
Зарегистрирован: Вс апр 07, 2013 9:30 pm
Откуда: Moscow
Благодарил (а): 2 раза
Поблагодарили: 58 раз
Контактная информация:

Re: Курс доллара

Сообщение LutsenkoDenis » Пт апр 10, 2015 10:30 am

Замени

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

$xml = $file->xpath("/CURRENCY");
на

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

$xml = $file->xpath("//CURRENCY");
________________________________________________________
Majordomo (GitHub) на HP Microserver Gen8. OS Debian Stretch
Ответить