Гость
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Вывод картинок через for-each. / 6 сообщений из 6, страница 1 из 1
10.05.2011, 22:11
    #37253859
diimko
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод картинок через for-each.
Привет народ. Ай нид ваша хелп)
Как в xml выводить картинки через for-each?
К каждому описанию товара нужна своя картинка. Как это сделать?

есть код XML
Код: plaintext
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.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
<?xml version="1.0" encoding="WINDOWS-1251"?>
<?xml-stylesheet type="text/xsl" href="goodscatalog.xsl"?>
<!DOCTYPE CATALOG SYSTEM "catalog.dtd">

<CATALOG>
 <GOODS id="p1">
  <picture>/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABkAAD/4QMpaHR0cDov
   L25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENl
   aGlIenJ...........cut.........
   wiYRMImETCJhEwiYRMImETCJhEwiYRMImETCJhEwiYRMImETCJhEwiYRMIv/2Q==</picture>
  <name>«Консуэла» </name>
  <price> 640  руб</price>
  <weight> —  450  гр</weight>
 </GOODS>

 <GOODS id="p2">
  <picture>image/pizza_2.jpg</picture>
  <name>«Ленинградская»</name>
  <price> 840  руб</price>
  <weight> —  450  гр</weight>
 </GOODS>
 
 <GOODS id="p3">
  <picture>image/pizza_1.jpg</picture>
  <name>«Мадрид» </name>
  <price> 900  руб</price>
  <weight> —  450  гр</weight>
 </GOODS>
 
 <GOODS id="b5">
  <picture>image/beer_1.jpg</picture>
  <name>«Stella Artois» </name>
  <price> 45  руб</price>
  <volume> —  0 . 5  л</volume>
 </GOODS>
 
 <GOODS id="s7">
  <picture>image/salat_1.jpg</picture>
  <name>Салат «Чо-чо» </name>
  <price> 250  руб</price>
  <weight> —  200  гр</weight>
 </GOODS>
 
 <GOODS id="s8">
  <picture>image/salat_1.jpg</picture>
  <name>Салат «Муген» </name>
  <price> 390  гр</price>
  <weight> —  270  гр</weight>
 </GOODS>
 
 <GOODS id="b6">
  <picture>image/beer_2.jpg</picture>
  <name>«Жигулевское» </name>
  <price> 30  руб</price>
  <volume> —  0 . 5  л</volume>
 </GOODS>
 
 <GOODS id="p4">
  <picture>image/pizza_2.jpg</picture>
  <name>«Бешеное мюсли» </name>
  <price> 900  руб</price>
  <weight> —  450  гр</weight>
 </GOODS>
</CATALOG>

И код XSL
Код: plaintext
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.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
  <html>
    <body STYLE="margin: 0;
            padding: 0;
            border: 0;
            outline: 0;
            font-weight: inherit;
            font-style: inherit;
            font-size: 14pt;
            font-family: Arial;
            vertical-align: baseline;">
     <div STYLE="width: 1000px;
	        background: red;
		margin: 20px auto 0 auto;
		margin-top: 20px;
		margin-right: auto;
		margin-bottom: 0px;
		margin-left: auto;" >
      <xsl:for-each select="/CATALOG/GOODS">
        <div STYLE="width: 250px; 
              align:centre;
              float:left;
              margin-top: 50px;">
          <img src="data:image/;base64," />
          <div><xsl:value-of select="name"/></div>
          <div><span STYLE="font-size: 18pt;
                       color: #aa312c;
                       font-family: Arial;
                       vertical-align: baseline;">
                <xsl:value-of select="price"/>
               </span>
                <xsl:value-of select="weight"/>
                <xsl:value-of select="volume"/>
            <div>заказать <select>
                           <option disabled="шт.">шт.</option>
                           <option> 1 </option>
                           <option> 2 </option>
                           <option> 3 </option>
                           <option> 4 </option>
                           <option> 5 </option>
                           <option> 6 </option>
                          </select>
            </div>
          </div> 
	    	</div>
      </xsl:for-each>
	  </div>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>
...
Рейтинг: 0 / 0
11.05.2011, 08:28
    #37254115
refreg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод картинок через for-each.
diimko,

Код: plaintext
<img src="{./picture}"/>
...
Рейтинг: 0 / 0
11.05.2011, 13:46
    #37254869
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод картинок через for-each.
refreg
Код: plaintext
<img src="{./picture}"/>

Не знал про фигурные скобки.
Код: plaintext
<img><xsl:attribute name="src"><xsl:value-of select="./picture"/></xsl:attribute></img>
Эти записи являются аналогами?
...
Рейтинг: 0 / 0
11.05.2011, 14:12
    #37254971
refreg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод картинок через for-each.
Antonariy,

В принципе, да, хотя, если бы заранее имя атрибута src не было известно, фигурные скобки не помогли...
...
Рейтинг: 0 / 0
11.05.2011, 14:44
    #37255073
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод картинок через for-each.
Блин, позно узнал, у меня уже столько через attribute ссылок и тех же картинок наворочено.
...
Рейтинг: 0 / 0
08.06.2011, 11:42
    #37300164
Ulanoff
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вывод картинок через for-each.
Код: plaintext
1.
<fo:external-graphic src="url('{GTFILENM_ID1}')" width="528.0pt" height="764.4pt" content-height="scale-to-fit" content-width="scale-to-fit" />
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Вывод картинок через for-each. / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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