maksn (12 Январь 2017 - 22:09) писал:
И увидите там в самом начале дату, на которую представлены курсы.
<ValCurs Date="13.01.2017" name="Foreign Currency Market">
Чтобы считать ее и добавить в базу, немного скорректируйте код
require_once("include/snoopy.class.php"); $url = "http://www.cbr.ru/scripts/XML_daily.asp?"; $snoopy = new Snoopy(); $snoopy->fetch($url); $xml = simplexml_load_string($snoopy->results); /*****Получить дату курсов из файла XML****/ $date_rate = form_eng_time($xml['Date']); /***********************************/ $cnt=Count($xml->Valute); for($i = 0; $i < $cnt; $i++) { $code=$xml->Valute[$i]->CharCode; if ($code=='EUR') { $value=$xml->Valute[$i]->Value; $EUR=str_replace (",", ".",$value); //Заменим запятую на точку } // Аналогично и с другими валютами.. if ($code=='USD') { $value=$xml->Valute[$i]->Value; $USD=str_replace (",", ".",$value); } } // Вставка в таблицу КБ, предварительно создал таблицу и поля: Дата, Курс Евро (f100), Курс Доллара(f101) data_insert(id_таблицы, array('ВАШЕ ПОЛЕ С ДАТОЙ КУРСА'=>$date_rate,'f101' => $USD, 'f100' => $EUR)); echo "Done"; //ВАШЕ ПОЛЕ С ДАТОЙ КУРСА - в формате fXXX
Огромное спасибо! Я с ПХП то 7 лет не работал (хотя у уже и начал вспоминаться), а с XML вообще никогда...
Теперь пытаюсь через вычисление Цену в прайсе привязать к курсу. В прайсе есть ячейка Цена в валюте.
$cur_date = date("d-m-Y"); data_select_field(281, "'f4741' as cur1", "'f4721' =", $cur_date); $line['Цена'] = $line['Цена в валюте'] * $cur1;
но ничего не происходит....