Модераторы: diadiavova
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ссылки на изображения, фотогалерея но без BASE64... 
:(
    Опции темы
koss
Дата 18.10.2005, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 18.10.2005
Где: Москва

Репутация: нет
Всего: нет



Дано:
1. Набор картинок.
2. Руки. smile
3. Знание XML (уровень: начинающий).
4. Идея: создать xml-документ, который при помощи xsl-таблиц преобразуется в html-формат, куда вставляется текстовая информация (фио, год рождения, ник, город...) и фотография (для каждого чела - своя фотка).


Проблема:
Всё реализовано, табличка генерится, записи сортируются. В общем, всё как бы шоколадно smile ...
НО! Как вставить в html-документ ССЫЛКУ на изображение?


Пробовал:
1. Для каждого человека создавал
<photo><img src="images/photo.jpg" /></photo>.
При попытке вставить в html, получалось так, что на месте предполагаемой картинки отображалось <img src="images/photo.jpg" />
.

2. Пытался использовать блоки DATA, куда помещал <img src="images/photo.jpg" />.
Результат аналогичен...


Вопрос:
Как вставить в html-документ картинку?
(Ссылка на которую находится в xml-документе а сама картинка берётся из директории 'images'.) smile


Призыв:
Помогите! smile

Это сообщение отредактировал(а) koss - 19.10.2005, 09:04
PM MAIL   Вверх
Ignat
Дата 19.10.2005, 08:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Флудератор
****


Профиль
Группа: Экс. модератор
Сообщений: 4030
Регистрация: 19.4.2004
Где: غيليندزيك مدينة

Репутация: 2
Всего: 73



Цитата(koss @ 18.10.2005, 18:22)
Помогите!

Спасибо, за подробное объяснение вопроса, но во-первых у тега img не хватает обязательного аттрибута alt="",
Во-вторых, код xslt-файла (точнее, строк, связанных с обработкой photo) в студию.


--------------------
Теперь при чем :P
PM   Вверх
koss
Дата 19.10.2005, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 18.10.2005
Где: Москва

Репутация: нет
Всего: нет



Завтра постараюсь выложить оба файла...
Они дома, а инет - на работе smile

Это сообщение отредактировал(а) koss - 19.10.2005, 09:09
PM MAIL   Вверх
Bikutoru
Дата 19.10.2005, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Увлекающийся
**


Профиль
Группа: Участник
Сообщений: 522
Регистрация: 24.5.2005
Где: Москва

Репутация: 2
Всего: 22



А не проще в xml хранить данные о фотках примерно так
Код

<photo img="myphoto.jpg" />

А в XSLT его преобразовывать в нормальную картинку с помощью
Код

<xsl:template match="photo">
   <img>
      <xsl:attribute name="src"><xsl:value-of select="@img" /></xsl:attribute>
   </img>
</xsl:template>



--------------------
Человек, словно в зеркале мир — многолик, 
Он ничтожен — и он же безмерно велик!
Омар Хайям
PM   Вверх
koss
Дата 19.10.2005, 20:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 18.10.2005
Где: Москва

Репутация: нет
Всего: нет



Воспользовался предложением от Bikutoru и получилось нечто подобное (в трёх частяхsmile):

persons.xml:
Код

<?xml version="1.0" encoding="Windows-1251" ?> 
<?xml-stylesheet type="text/xsl" href="persons.xsl" ?> 
<persons_contact>
 <person>
  <name>Алина</name> 
  <nick>Tiger</nick> 
  <DOB>1980</DOB> 
  <exp>4</exp> 
  <country>Польша</country> 
  <top>7.5</top> 
  <email>[email protected]</email> 
  <rank>Сержант</rank> 
  <descr>Алина - боевик с 4-летним стажем. Прекрасный снайпер. Проявила себя в 2001 году как активный лидер повстанцев в горах северной Албании. Настоящий полиглот: кроме своего родного польского знает английский, французский и албанский.</descr> 
  <photo img="i/1.jpg" /> 
  </person>
 <person>
  <name>Марио</name> 
  <nick>Donnald</nick> 
  <DOB>1975</DOB> 
  <exp>9 лет</exp> 
  <country>Италия</country> 
  <top>9.2</top> 
  <email>[email protected]</email> 
  <rank>Лейтенант</rank> 
  <descr>Итальянский ковбой. Идеально подходит для операций, где необходима стремительность, хитрость, огневая поддержка. Ас стрельбы с двух рук. Любимое оружие - 2 десерт игла и кортик, которые достались ему от отца, бывшего морского пехотинца. Сила в чистом виде.</descr> 
  <photo img="i/4.jpg" /> 
  </person>
 <person>
  <name>Йори</name> 
  <nick>Fix Lo</nick> 
  <DOB>1984</DOB> 
  <exp>4 года</exp> 
  <country>Япония</country> 
  <top>5</top> 
  <email>[email protected]</email> 
  <rank>Рядовой</rank> 
  <descr>Кто не знаком с Йори, тот уж точно в невысокой, симпатичной и очаровательной девочке ни за что не распознает мастера японской рукопашной борьбы "Шакет". Папа у нее был молодцом, научил дочурку убивать и не париться по этому поводу. Девчонка работает на 5: тихо, шустро и эффективно.</descr> 
  <photo img="i/3.jpg" /> 
  </person>
 <person>
  <name>Ален</name> 
  <nick>Ufss</nick> 
  <DOB>1875</DOB> 
  <exp>102 года</exp> 
  <country>Мексика</country> 
  <top>9.9</top> 
  <email>он ему не нужен</email> 
  <rank>Капитан</rank> 
  <descr>Когда Ален был маленьким, он часто ходил к океану и искал в мусоре, который выкидывало на берег волной всякие штуки, которые потом можно было продать на базаре и на пару заработанных медяков прожить еще день. Но потом... никто не знает, что случилось - просто Алену очень не хотелось умирать, и он решил стать бессмертым. Вампиром.</descr> 
  <photo img="i/2.jpg" /> 
  </person>
  </persons_contact>



persons.xsl:
Код

  <?xml version="1.0" encoding="Windows-1251" ?> 
 <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
 <xsl:template match="/">
 <HTML>
 <HEAD>
  <TITLE>PERSONS</TITLE> 
  <META http-equiv="Content-Type" content="text/html; charset=windows-1251" /> 
  <LINK rel="stylesheet" href="st.css" type="text/css" /> 
  </HEAD>
 <BODY>
 <xsl:for-each select="persons_contact/person" order-by="+name">
 <TABLE width="500" border="0" cellspacing="0" cellpadding="1">
 <TR bgcolor="#F0F0F0">
 <TD width="220" bgcolor="#F0F0F0">
 <P>
  Имя: 
  <xsl:value-of select="name" /> 
  </P>
  </TD>
 <TD width="150">
 <P>
  Ник: 
  <xsl:value-of select="nick" /> 
  </P>
  </TD>
 <xsl:template match="photo">
 <TD width="124" rowspan="5">
 <img>
 <xsl:attribute name="src">
  <xsl:value-of select="photo" /> 
  </xsl:attribute>
  </img>
  </TD>
  </xsl:template>
  </TR>
 <TR>
 <TD bgcolor="#ADEDFF">
 <P>
  DOB: 
  <xsl:value-of select="DOB" /> 
  </P>
  </TD>
 <TD bgcolor="#ADEDFF">
 <P>
  Опыт: 
  <xsl:value-of select="exp" /> 
  </P>
  </TD>
  </TR>
 <TR>
 <TD width="220" bgcolor="#F0F0F0">
 <P>
  Страна: 
  <xsl:value-of select="country" /> 
  </P>
  </TD>
 <TD width="150" bgcolor="#F0F0F0">
 <P>
  Рейтинг: 
  <xsl:value-of select="top" /> 
  </P>
  </TD>
  </TR>
 <TR>
 <TD width="220" bgcolor="#ADEDFF">
 <P>
  E-mail: 
  <xsl:value-of select="email" /> 
  </P>
  </TD>
 <TD width="150" bgcolor="#ADEDFF">
 <P>
  Звание: 
  <xsl:value-of select="rank" /> 
  </P>
  </TD>
  </TR>
 <TR>
 <TD colspan="2" valign="top" bgcolor="#F0F0F0">
 <P>
  <xsl:value-of select="descr" /> 
  </P>
  </TD>
  </TR>
  </TABLE>
  <BR /> 
  </xsl:for-each>
  </BODY>
  </HTML>
  </xsl:template>
  </xsl:stylesheet>


И для красоты st.css:
Код

p {  font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px}
table {  border: 1px #00CCFF solid; background-color: #00CCFF}


После чего ИЕ6 стал мне выдавать сообщение:
Не удается просмотреть ввод XML с использованием списка стилей XSL.
Исправьте ошибку и затем нажмите кнопку "Обновить"или повторите попытку позднее.
--------------------------------------------------------------------------------
Не допускается использование здесь ключевого слова xsl:template.


smile


PM MAIL   Вверх
3,14
Дата 20.10.2005, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1614
Регистрация: 18.6.2004
Где: Н. Новгород

Репутация: 10
Всего: 24



Держи поправленный xsl:

Код

<?xml version="1.0" encoding="windows-1251"?>
 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">    

 <HTML>    
 <HEAD>    
  <TITLE>PERSONS</TITLE>    
  <META http-equiv="Content-Type" content="text/html; charset=windows-1251" />    
  <LINK rel="stylesheet" href="st.css" type="text/css" />    
  </HEAD>    
 <BODY>    
 <xsl:for-each select="persons_contact/person">    
 <sort select="name"/>
 <TABLE width="500" border="0" cellspacing="0" cellpadding="1">    
 <TR bgcolor="#F0F0F0">    
 <TD width="220" bgcolor="#F0F0F0">    
 <P>    
  Èìÿ:    
  <xsl:value-of select="name" />    
  </P>    
  </TD>    
 <TD width="150">    
 <P>    
  Íèê:    
  <xsl:value-of select="nick" />    
  </P>    
  </TD>    
 <TD width="124" rowspan="5"><img src="{photo/@img}"/></TD>
  </TR>    
 <TR>    
 <TD bgcolor="#ADEDFF">    
 <P>    
  DOB:    
  <xsl:value-of select="DOB" />    
  </P>    
  </TD>    
 <TD bgcolor="#ADEDFF">    
 <P>    
  Îïûò:    
  <xsl:value-of select="exp" />    
  </P>    
  </TD>    
  </TR>    
 <TR>    
 <TD width="220" bgcolor="#F0F0F0">    
 <P>    
  Ñòðàíà:    
  <xsl:value-of select="country" />    
  </P>    
  </TD>    
 <TD width="150" bgcolor="#F0F0F0">    
 <P>    
  Ðåéòèíã:    
  <xsl:value-of select="top" />    
  </P>    
  </TD>    
  </TR>    
 <TR>    
 <TD width="220" bgcolor="#ADEDFF">    
 <P>    
  E-mail:    
  <xsl:value-of select="email" />    
  </P>    
  </TD>    
 <TD width="150" bgcolor="#ADEDFF">    
 <P>    
  Çâàíèå:    
  <xsl:value-of select="rank" />    
  </P>    
  </TD>    
  </TR>    
 <TR>    
 <TD colspan="2" valign="top" bgcolor="#F0F0F0">    
 <P>    
  <xsl:value-of select="descr" />    
  </P>    
  </TD>    
  </TR>    
  </TABLE>    
  <BR />    
  </xsl:for-each>    
  </BODY>    
  </HTML>    
  </xsl:template>    
</xsl:stylesheet>



Пожайлуста, в следующий раз лучше форматируй документы, иначе их читать тяжело.


--------------------
Может быть, это только мой бред,
Может быть, жизнь не так хороша,
Может быть, я не выйду на свет,
Но я летал, когда пела душа...
PM MAIL   Вверх
koss
Дата 20.10.2005, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 18.10.2005
Где: Москва

Репутация: нет
Всего: нет



Спасибо большое smile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "XML/XSLT"
diadiavova

Прежде чем опубликовать вопрос, попробуйте воспользоваться поиском - возможно тема уже поднималась.

Также рекомендуем Вам зайти в раздел FAQ ,раздел дополняется и, возможно, там вы увидите готовое решение.

Для ответов на часто задаваемые вопросы существует FAQ раздела. Новости можно публиковать в разделе новостей. Для статей так же есть специальный раздел

Желаем удачи в Вашем деле!


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, diadiavova.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | XML, XSL | Следующая тема »


 




[ Время генерации скрипта: 0.0475 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.