powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Парсинг XML
1 сообщений из 1, страница 1 из 1
Парсинг XML
    #38449587
Alexander_mk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
На сайт выводится информацию из файла price.php . Вот его часть.
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
<?php
$xmlstr = <<<XML
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE yml_catalog SYSTEM "shops.dtd">
<yml_catalog date="2013-10-07 12:00">
  <shop>
    <currencies>
      <currency id="RUR" rate="1"/>
      <currency id="USD" rate="33.234289"/>
      <currency id="EUR" rate="45.07898"/>
    </currencies>
    <offers>
    <offer id="10582" type="vendor.model" available="true">
        <url>url</url>
        <price>210</price>
        <currencyId>USD</currencyId>
        <categoryId>378</categoryId>
        <picture>picture</picture>
        <vendor>vendor</vendor>
        <model>model</model>
        <description>краткие характеристики</description>
      </offer>
      </offers>
   </shop>
</yml_catalog>
XML;
?>



Код страницы вывода:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
<?php 
      include 'price.php';
      $yml_catalog = new SimpleXMLElement($xmlstr);
      $RUR=$yml_catalog->shop->currencies->currency[0][rate] ;
      $USD=$yml_catalog->shop->currencies->currency[1][rate] ;
      $EUR=$yml_catalog->shop->currencies->currency[2][rate] ;
      $USD = sprintf("%2f", $USD);                                                                           
      $EUR = sprintf("%2f", $EUR);

   echo "<table class='catalog'><tr><td>&nbsp;</td><td><strong>Наименование</strong></td><td><strong>Цена</strong></td</tr>";
    foreach ($yml_catalog->shop->offers->offer as $offer) {if ((string)$offer->categoryId=='378' && (string)$offer->vendor=='vendor') 
{ echo  "<tr><td class='catalog_photo'>"; 
                if (isset($offer->picture)) { echo "<img src='".((string) $offer->picture)."' alt='' class='test'>" ;}
                else {echo "<img src='no_small_photo.gif' alt='' class='test'>";} 
    echo "</td><td class='catalog_info'><b>".((string) $offer->model)."</b><br>".((string) $offer->description)."</td><td    class='catalog_price'>";
                 if ((string) $offer->currencyId=='USD')     {$r=(string)$offer->price*$USD;  $r = sprintf("%01.2f", $r); echo $r." руб.";}
                 elseif ((string) $offer->currencyId=='EUR') {$r=(string)$offer->price*$EUR;  $r = sprintf("%01.2f", $r); echo $r." руб.";}
                 elseif ((string) $offer->currencyId=='RUR') {$r=(string)$offer->price*$RUR;  $r = sprintf("%01.2f", $r); echo $r." руб.";} 
                 echo "</td></tr>"; } } echo "</table><br>"; 

    ?>



Проблема в том, что при загрузке нового файла price.php с той же структурой, но другими данными, информация выводится из файла не хочет. В чем может быть проблема?
...
Рейтинг: 0 / 0
1 сообщений из 1, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Парсинг XML
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]