Главная страница / Сторонние модули / Загрузка курса валют с сайта ЦентроБанка РФ
январь 03 2007

Загрузка курса валют с сайта ЦентроБанка РФ

Назначение модуля: Скрипт загружает информацию об официальном курсе валюты с сайта ЦентроБанка Российской Федерации. Обращается по адресу сайта Центробанка http://www.cbr.ru/currency_base/XML_daily.asp?date_req=$date, где $data дата в формате ДД/ММ/ГГГГ, можно узнать курс валют установленных в запрошенный день.

Версия движка: 5.0, 5.1, 5.2

Примечание: Если возникнет желание поставить другую валюту см. значение на сайте http://www.cbr.ru/scripts/XML_daily.asp между

<NumCode> </NumCode>

Например:

Казахский тенге:
if($cur[2] == 840) $kzt = str_replace(",",".",$cur[4]);

Украинский гривен:
if($cur[2] == 980 ) $uah = str_replace(",",".",$cur[4]);

Белорусский рубль:
if($cur[2] == 974 ) $byr = str_replace(",",".",$cur[4]);


Ну и соответственно в файле шаблона exrate.tpl добавляем {kzt} {uah} {byr}

Ссылка для скачивания модуля: exrate_1.0.rar

Комментарии

  1. GURU (Посетители)

    3 января 2007 23:37 20 комментариев
    А нафиг он нужен ?
  2. Репа-Х (Посетители)

    4 января 2007 00:14 53 комментария
    О как! smile
  3. funguru (Посетители)

    4 января 2007 10:14 42 комментария
    Спасибо большое! Поставил, удобно, чётко, красиво! wink
  4. Sity (Посетители)

    4 января 2007 21:11 20 комментариев
    Большое спасибо! smile
  5. Shinji (Посетители)

    4 января 2007 21:24 4 комментария
    А кеширование есть?

    Если есть, то когда происходит обновление с сервера ЦБРФ?
  6. voviksumy (Посетители)

    5 января 2007 16:29 6 комментариев
    Слабовато... Только содрано с другого сайта и вставлено в модуль. А если недоступен сервер?
    Мало того, что и так тормозится работа сайта пока получается хмл файл...
    Короче нужно вставить в ифрейм. Или как я вставил в див. В который через аякс подругжается сам модуль.
  7. Shinji (Посетители)

    5 января 2007 22:17 4 комментария
    voviksumy, а можно подробнее?
  8. aerus (Посетители)

    10 января 2007 10:18 8 комментариев
    Спасибо, офигенная вещь :)
  9. RedScorp (Клиенты)

    9 февраля 2007 09:25 10 комментариев
    Ребята вот объясните мне такому "...", я недавно пользуюсь DLE (купленным!), но вот поставить сие не смог. Сделал все как написано в ReadMy.txt. Далее в main.tpl, после опроса добавил
    <table width="100%">
    <tr>
    <td width="5"><img src="/templates/Default/images/ltdt.png" width="5" height="50" border="0"></td>
    <td background="/templates/Default/images/bgtdt.png" class="ltitle" valign="top">Курсы валют</td>
    <td width="5"><img src="/templates/Default/images/rtdt.png" width="5" height="50" border="0"></td>
    </tr>

    <tr>
    <td background="/templates/Default/images/ltd.gif"><img src="/templates/Default/images/ltd.gif" width="5" border="0"></td>
    <td class="copy">{dollar}<br /></td>
    <td background="/templates/Default/images/rtd.gif"><img src="/templates/Default/images/rtd.gif" width="5" border="0"></td>
    </tr>

    <tr>
    <td background="/templates/Default/images/ltd.gif"><img src="/templates/Default/images/ltd.gif" width="5" border="0"></td>
    <td class="copy">{euro}<br /></td>
    <td background="/templates/Default/images/rtd.gif"><img src="/templates/Default/images/rtd.gif" width="5" border="0"></td>
    </tr>

    <tr>
    <td><img src="/templates/Default/images/ltdb.png" width="5" height="10" border="0"></td>
    <td background="/templates/Default/images/tdbbg.png"><img src="/templates/Default/images/tdbbg.png" width="1" height="10" border="0"></td>
    <td><img src="/templates/Default/images/rtdb.png" width="5" height="10" border="0"></td>
    </tr>
    </table>
    На мой взгляд все верно, но при входе на сайт видим:
    Курсы валют
    {dollar}
    {euro}


    Сам же и отвечу. Оказывается в main.tpl надо прописать не строчки с {валютой}, а спец тег - {exrate} и тогда все будет нормально. Кстати!!!
    Казахский тенге if($cur[2] == 840) $kzt = str_replace(",",".",$cur[4]);
    Не верно!
    398 KZT 100 Казахских тенге 21,0667
    Код каз.тенге = 398 и размерность в 100 стоит. Т.е. 100 тенге это будет 21,0667 рос.руб. Вот!
  10. Art-Studio (Посетители)

    9 марта 2007 15:15 1 комментарий
    Не знаю насколько грамотно, но у себя я сделал так (загрузка файла с курсами на сервер один раз в день):

    <?
    /*----Файл: exrate.php Назначение: вывод текущего курса валют----*/
    error_reporting(0);if(!defined('DATALIFEENGINE')){die("Hacking attempt!");}

    $date=date("d/M/Y", filemtime("exrate.xml"));
    if ($date <> date("d/M/Y"))copy ("http://bnm.md/apps/ofexch_xml.jsp","exrate.xml");
    function get_content(){$fd = fopen("exrate.xml","r");$text="";
    if (!$fd) echo ""; else { while (!feof ($fd)) $text .= fgets($fd, 1024);
    fclose ($fd);}return $text;}

    $pattern = "#<Valute ID=\"([^\"]+)[^>]+>[^>]+>([^<]+)[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>([^<]+)[^>]+>[^>]+>([^<]+)#i";
    preg_match_all($pattern, get_content(), $out, PREG_SET_ORDER);

    $leu = "0.0000"; $euro = "0.0000"; $dollar = "0.0000"; $rubla = "0.0000";

    foreach($out as $cur){
    if($cur[2] == 946) $leu = str_replace(",",".",$cur[4]);
    if($cur[2] == 978) $euro = str_replace(",",".",$cur[4]);
    if($cur[2] == 840) $dollar = str_replace(",",".",$cur[4]);
    if($cur[2] == 643) $rubla = str_replace(",",".",$cur[4]);}

    $tpl->set('{date}', date("d/M/Y", filemtime("exrate.xml")));
    $tpl->set('{leu}', $leu);
    $tpl->set('{euro}', $euro);
    $tpl->set('{dollar}', $dollar);
    $tpl->set('{rubla}', $rubla);
    $tpl->load_template('exrate.tpl');$tpl->compile('exrate');$tpl->clear();
    ?>
  11. Pacifik (Клиенты)

    12 мая 2007 10:25 25 комментариев
    А нельзя сделать такой мод, что бы он автоматом показывал курс вчера и сегодня и выводил разницу?
  12. info (Клиенты)

    15 апреля 2008 23:39 4 комментария
    можно =).. я писал
  13. megaborgovik (Клиенты)

    15 апреля 2009 15:44 9 комментариев
    Полезная штучка !!!!!

    Только один вопрос на 7.5 работать будет. Или номера версий конкретные, чёта мя такое указаний версий напрягает. Трудно верится что новые версии скрипта могут не дружить со старенькими но очень полезными модулями.

    Но тем не менее всёравно - Спасибо !!!
  14. kinofura (Клиенты)

    2 июля 2011 14:23 4 комментария
    Нужная вещь! Для тех кто серьезно зарабатывает на своем сайте.
  15. -GlazOFF-tm (Посетители)

    3 декабря 2015 20:26 4 комментария
    Дайте пожалуйста, правильный пример вывода в saidebar. winked

Информация

Комментирование публикаций доступно только пользователям имеющим действующую лицензию на скрипт. Если вы уже приобретали скрипт, то вам необходимо зайти на сайт под своим клиентским аккаунтом.

Календарь

«    Ноябрь 2020    »
ПнВтСрЧтПтСбВс
 1
2345678
9101112131415
16171819202122
23242526272829
30 

Опрос на сайте

Совершаете ли вы покупки в интернет?