Делаю на Flash информер курсов валют, который показывает актуальный курс доллара и евро по данным центробанка и его изменение относительно предыдущих котировок. Он берет данные из php скрипта. Я думаю php скрипт не работает. Он не показывает курсы валют, если его запустить отдельно и попросить вывести их в браузер.
Пожалуйста помогите советом. Почему не работает ?
<?
// Устанавливаем сегодняшную и вчерашную дату
$date1= date("d/m/Y");
$date2= date("d/m/Y",time()-86400);
// Проверяем дату
echo $date1."<br>";
echo $date2."<br>";
// Запрашиваем список курсов валют за два дня
$cont1 = file_get_contents("http://www.cbr.ru/scripts/XML_daily.asp?date_req=".$date1);
$cont2 = file_get_contents("http://www.cbr.ru/scripts/XML_daily.asp?date_req=".$date2);
// Составляем шаблон для считывания в массив $marches1
$pattern = "/<CharCode>(.*?)<\/CharCode>\s*<Nominal>(.*)<\/Nominal>\s*<Name>(.*)<\/Name>\s*<Value>(.*)<\/Value>/im";
// Формируем массив по шаблону $pattern
$cnt1 = preg_match_all($pattern,$cont1,$matches1);
if($cnt1 != FALSE)
{
// Записываем сегодняшний курс доллара в переменную $bucks1. Он пятый сверху.
$bucks1 = $matches1[4][4];
echo "&bucks1=".$bucks1;
// Записываем сегодняшний курс евро в переменную $euro1. Он шестой сверху.
$euro1 = $matches1[4][5];
echo "&euro1=".$euro1;
}
$cnt2 = preg_match_all($pattern,$cont2,$matches2);
if($cnt2 != FALSE)
{
// Записываем вчерашний курс доллара в переменную $bucks2
$euro2 = $matches2[4][5];
echo "&euro2=".$euro2;
// Записываем вчерашний курс евро в переменную $euro2
$bucks2 = $matches2[4][4];
echo "&bucks2=".$bucks2;
// Проверяем что там у нас получилось
echo "Доллар - ".$bucks1."<br>";
echo "Евро - ".$euro1."<br>";
echo "Доллар2 - ".$bucks2."<br>";
echo "Евро2 - ".$euro2."<br>";
echo $cnt1;
}
?>
На выводе получаем 06/12/2011
05/12/2011
Доллар -
Евро -
Доллар2 -
Евро2 -
0
Теперь, как выглядит запрашиваемый XML файл.
<ValCurs Date="02/03/2002" name="Foreign Currency Market">
<Valute ID="R01010">
<NumCode>036</NumCode>
<CharCode>AUD</CharCode>
<Nominal>1</Nominal>
<Name>Австралийский доллар</Name>
<Value>16,0102</Value>
</Valute>
<Valute ID="R01035">
<NumCode>826</NumCode>
<CharCode>GBP</CharCode>
<Nominal>1</Nominal>
<Name>Фунт стерлингов Соединенного королевства</Name>
<Value>43,8254</Value>
</Valute>
<Valute ID="R01090">
<NumCode>974</NumCode>
<CharCode>BYR</CharCode>
<Nominal>1000</Nominal>
<Name>Белорусских рублей</Name>
<Value>18,4290</Value>
</Valute>
<Valute ID="R01215">
<NumCode>208</NumCode>
<CharCode>DKK</CharCode>
<Nominal>10</Nominal>
<Name>Датских крон</Name>
<Value>36,1010</Value>
</Valute>
<Valute ID="R01235">
<NumCode>840</NumCode>
<CharCode>USD</CharCode>
<Nominal>1</Nominal>
<Name>Доллар США</Name>
<Value>30,9436</Value>
</Valute>
<Valute ID="R01239">
<NumCode>978</NumCode>
<CharCode>EUR</CharCode>
<Nominal>1</Nominal>
<Name>Евро</Name>
<Value>26,8343</Value>
</Valute>