Курс валют
Прислано: vetalb
сб, 10/01/2009 - 08:43
demartвыложил код в этомя чтото смастерил, похожее на модуль. У меня блок включен и выставлен в правой колонке, но почему-то он выводится с самого верху выше шапки сайта
вот код
<?php /** * Implementation of hook_perm(). */ function currencies_perm() { return array('access cur block settings'); } /** * Implementation of hook_menu(). */ function currencies_menu() { $items = array(); $items['admin/settings/cur-block'] = array( 'title' => 'Currency block settings', 'description' => 'Currency block settings.', 'page callback' => 'drupal_get_form', 'page arguments' => array('currencies_settings'), 'access arguments' => array('access cur block settings'), ); return $items; } /** * Implementation of hook_block(). */ function currencies_block($op = 'list', $delta = 0, $edit = array()) { switch ($op) { case 'list': $blocks[0] = array( 'info' => t('Currencies block'), ); return $blocks; case 'view': switch ($delta) { case 0: $block['subject'] = t('Currencies block'); break; } return $block; } } /** * A block content function. */ // Получаем текущие курсы валют в rss-формате с сайта www.cbr.ru $content = get_content(); // Разбираем содержимое, при помощи регулярных выражений $pattern = "#<Valute ID=\"([^\"]+)[^>]+>[^>]+>([^<]+)[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>([^<]+)[^>]+>[^>]+>([^<]+)#i"; preg_match_all($pattern, $content, $out, PREG_SET_ORDER); $dollar = ""; $euro = ""; foreach($out as $cur) { if($cur[2] == 840) $dollar = str_replace(",",".",$cur[4]); if($cur[2] == 978) $euro = str_replace(",",".",$cur[4]); } echo "Доллар - ".$dollar."<br>"; echo "Евро - ".$euro."<br>"; function get_content() { // Формируем сегодняшнюю дату $date = date("d/m/Y"); // Формируем ссылку $link = "http://www.cbr.ru/scripts/XML_daily.asp?date_req=$date"; // Загружаем HTML-страницу $fd = fopen($link, "r"); $text=""; if (!$fd) echo "Запрашиваемая страница не найдена"; else { // Чтение содержимого файла в переменную $text while (!feof ($fd)) $text .= fgets($fd, 4096); } // Закрыть открытый файловый дескриптор fclose ($fd); return $text; }
- vetalb's blog
- Для комментирования войдите или зарегистрируйтесь
Есть модуль для курса валют
- Для комментирования войдите или зарегистрируйтесь
Чего-то этот код очень похож на мой модуль для курсов валют. Даже комменты в коде такие же, только я вместо кривых регэкспов для парсинга XML использовал SimpleXML.
Кстати, завтра выложу версию, которая показывает динамику изменения курсов.
- Для комментирования войдите или зарегистрируйтесь
Geldora, выложи если не жалко зачем писать что у меня есть.
Я понимаю друпал это классно, но не пойму смысла ресурса, дайте ссылку где собраны модули, с нормальными объяснениями или хорошей документации(а не топик с форума). Да все есть на анг. языке хорошо разложено, почему такое нельзя сделать на русском ведь все написано(код) и ресурс называется друпал Россия. Для неопытных юзеров(как я) можно было бы перевести хотя бы основные модули, а то не поймешь что они делают приходится заходить на оф сайт и вчитываться.
Вот откуда взял код, откуда его автор взял не знаю
ссылка
- Для комментирования войдите или зарегистрируйтесь
"А вы и есть за меня будете?" - из мультфильма...
vetalb вы кому-нибудь оплатили затраченное время на изучение ваших проблем?
А почему тогда претензии? Вам бесплатно помогают, а вы ругаетесь на человека и упрекаете всех. Где логика?
- Для комментирования войдите или зарегистрируйтесь
зачем помогать, если есть хорошая документация я бы и сам разобрался, прочитал как создать блок так и не понял толком, автор пишет про создания блока сам не уверен в том что он правильно это делает. А потом его в коментах поправляют что в описании есть ошибки. Это хорошая документация?
Новичкам и так тяжело разобраться, так еще без форума ничего сделать нельзя. В нете и на сайте порылся ничего не находишь, начинаешь постить всякие пустяки и морочить голову людям. То есть если не знаешь англ. язык ловить с друпал нечего.
- Для комментирования войдите или зарегистрируйтесь
Я имела в виду модуль Ромки :) Возьми у него в блоге, он же дал ссылку!
- Для комментирования войдите или зарегистрируйтесь
если не знаешь английский, ловить не только с друпал, а и вообще, весьма тяжело. Изучил друпал без форумов и без документации САМ. Хорош ныть.
- Для комментирования войдите или зарегистрируйтесь
neochief, ну не все такие молодцы как вы.
Извините если кого обидел.
- Для комментирования войдите или зарегистрируйтесь
Подскажите, а как уменьшить количество знаков выводимых после запятой. Т.е. у вас выводится курс доллара с точностью до "28.8576", а хотелось бы попроще - "28.85". Как это реализовать?
Спасибо!
- Для комментирования войдите или зарегистрируйтесь





Комментарии