Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 0 Ответов
  • 1350 Просмотров
*

ilgizon87

  • Захожу иногда
  • 134
  • 11 / 0
Код информера mcbr
« : 04.06.2011, 22:11:10 »
Код
<?php
class modmcbrHelper
{
    function getCBR( $params )
    {
//функция XML парсера
function xml_parser_url($cbrURL){
$ch = curl_init($cbrURL);
       curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
       $doc = curl_exec($ch);
curl_close($ch);

// инициализация XML parser
$parser = JFactory::getXMLParser('simple');

if ($parser->loadString($doc)) {

        //echo("File loaded...<br />");

if (isset( $parser->document )) {
        $document =& $parser->document;
return $document;
  }

} else {
          JError::raiseError(500, "Error - couldnt load data!");
}

}

//преобразовываем в более менее понятный массив
function xml_normal($cbrURL){

$cbr_pars = xml_parser_url($cbrURL);
$cbr['date'] = $cbr_pars->_attributes['date'];

for ($i=0; $i<17; $i++){
$cbr[$cbr_pars->_children[$i]->_children[1]->_data] = array (
'numcode'=> $cbr_pars->_children[$i]->_children[0]->_data,
'charcode'=> $cbr_pars->_children[$i]->_children[1]->_data,
'nominal'=> $cbr_pars->_children[$i]->_children[2]->_data,
'name'=> $cbr_pars->_children[$i]->_children[3]->_data,
'value'=> str_replace (",", ".", $cbr_pars->_children[$i]->_children[4]->_data)
);
}
return $cbr;
}

//урл для последних торгов и перегон в массив
$cbr_m['url'] = 'http://cbr.ru/scripts/XML_daily.asp';
$cbr = xml_normal($cbr_m['url']);

//ищем дату на 1 день назад от последней выданной нам
$date_1=date('d.m.Y', strtotime($cbr['date'])-86400);

//урл для предпоследних торгов и перегон в массив
$cbr_m['url2'] = 'http://cbr.ru/scripts/XML_daily.asp?date_req='.$date_1;
$cbr2 = xml_normal($cbr_m['url2']);



$text  = '<div style="font-size: xx-small;"><table width="130px" cellspacing="0" cellpadding="0" border="0" style="padding-top: 0px;" align="center">';
$text .= '';

//Массив выводимых вылют ( 'AUD', 'GBP', 'BYR', 'DKK', 'USD', 'EUR', 'ISK', 'KZT', 'CAD', 'CNY', 'NOK', 'XDR', 'SGD', 'TRY', 'UAH', 'SEK', 'CHF' )
$name_valutes  = array('USD');

foreach($name_valutes as $name_valute) {
$raznica = $cbr[$name_valute]['value']-$cbr2[$name_valute]['value'];
$raz = $raznica;

if ($raznica == 0) $pic='const';
if ($raznica >  0) $pic='up';
if ($raznica <  0) $pic='down';
$text .= '<tr valign="center" ><td><img title="'.$cbr[$name_valute]['name'].' (номинал: '.$cbr[$name_valute]['nominal'].')" src="modules/mod_mcbr/image/flag-'.$name_valute.'.gif"></td>';
$text .= '</td><td>'.$cbr2[$name_valute]['value'].'</td><td>'.$cbr[$name_valute]['value'].'</td><td><img title="'.$raz.'" src="modules/mod_mcbr/image/'.$pic.'.gif"></td></tr>';
}

$text .= '</table></div>';

return $text;
}
} ?>


Вот код информера mcbr.В этом виде он выводит валюты и курсы в один столбец,а я хочу укладывать их в одну строку.Маился час наверное,может кто подскажет что нужно сделать?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблема с созданием информера погоды от Gismeteo

Автор demogorgon

Ответов: 12
Просмотров: 13013
Последний ответ 30.04.2013, 14:58:38
от fila61