Posez votre question Signaler

Image en xml [Résolu]

Sandy - Dernière réponse le 17 août 2010 à 23:06
SAlut,

je débute en XML-XSL. J'ai le chemin d'une image dans une balise xml et dans mon xsl je veux le récupérer pour afficher l'image. il me met une erreur quand je met :
<img src="<xsl:value-of select='ImgAlbum'/>"/>
j'ai également essayé ca mais ca ne marche pas :
<img src="{@ImgAlbum}"/>
Comment faire?
Lire la suite 

Image en xml »

10 réponses
Réponse
+6
moins plus
Maintenant que j'ai l'erreur çà me rappelle qqch que j'utilisai

<img>
<xsl:attribute name="src">
<xsl:value-of select="ImgAlbum" />
</xsl:attribute>
</img>

Il se passe quoi avec çà?
Si tu veux des explications j'ai pas le temps de suite, de suite mais peut-etre dans l'aprem
a+
Ajouter un commentaire
Réponse
+2
moins plus
J'ai fais un dtd qui ressemble à ca :
<!DOCTYPE Sandytheque [

<!ELEMENT Artiste (NomArtiste, Album)? >
<!ATTLIST Artiste NomArtiste CDATA #REQUIRED >
<!ELEMENT Album (NomAlbum,ImgAlbum,TypeAlbum,Chanson) >
<!ATTLIST Album NomAlbum CDATA #REQUIRED >
<!ATTLIST Album ImgAlbum CDATA #REQUIRED >
<!ATTLIST Album TypeAlbum CDATA #REQUIRED >
<!ELEMENT Chanson (NomChanson,NumChanson) >
<!ATTLIST Chanson NomChanson CDATA #REQUIRED >
<!ATTLIST Chanson NumChanson CDATA #REQUIRED >
]>

Apres j'ai voulu testé alors j'ai mis ca :
<Sandytheque>
<Artiste>
<NomArtiste>Adema</NomArtiste>
<Album>
<NomAlbum>Adema</NomAlbum>
<ImgAlbum>images/adema_adema.jpg</ImgAlbum>
<TypeAlbum>Rock</TypeAlbum>
<Chanson>
<NomChanson>Everyone</NomChanson>
<NumChanson>1</NumChanson>
</Chanson>
<Chanson>
</Album>
</Artiste>
</Sandytheque>

D'ailleurs si y a des trucs qui te semble pas bien hesite aps à me le dire ....
et le xsl :
<?xml version="1.0" encoding="ISO-8859-1"?>
<HTML xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<HEAD>
<TITLE>Sandythèque</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<xsl:for-each select="Sandytheque/Artiste">
<table border='1' width ='90%'>
<tr>
<td colspan='3' align='center'>
<xsl:value-of select="NomArtiste"/>
</td>
</tr>
<xsl:for-each select="Album">
<tr>
<td width ='30%' align='center'>
<xsl:value-of select="NomAlbum"/>
( <xsl:value-of select="TypeAlbum"/> )
</td>
<td rowspan='2'>
<xsl:for-each select="Chanson">
<p>
<xsl:value-of select="NumChanson"/>
-
<xsl:value-of select="NomChanson"/>
</p>
</xsl:for-each>
</td>
</tr>
<tr>
<td width ='30%' align='center'>
<img src='{@"ImgAlbum"}' border ='0'/>
</td>

</tr>

</xsl:for-each>
</table>

</xsl:for-each>

</BODY>
</HTML>
Ajouter un commentaire
Réponse
+0
moins plus
Quelle est l'erreur?
Quelle tete à ton xml? (il me semble qu'il faut gerer la notion d'arborescence de ton document pour lui indiquer le noeud correspondant au chemin de ton image)
Ajouter un commentaire
Réponse
+0
moins plus
Moi dans :
<img src="<xsl:value-of select='ImgAlbum'/>"/>
Je vois que c'est le seul endroit ou tu mets des guillemets simples ' au lieu des doubles " pour argument de select.

La structure du document a pas l'air mal. Si tu as fais un copier-coller il y a des fautes: Ta deuxieme balise chanson n'est pas ferme.

Quelle est l'erreur qu'il t'indique?
Le reste fonctionne-t'il?
Ajouter un commentaire
Réponse
+0
moins plus
Pour la balise chanson j'ai fais un copier coller mais j'ai coupé au milieu car j'ai mis plusieurs chansons donc ca c ok

sinon quand j'ai
<img src='{@"ImgAlbum"}' border ='0'/>
j'ai pas d'erreur j'ai pas d'image qui apparait
alors que si je met
<img src='<xsl:value-of select="ImgAlbum"/>'/>
j'ai :
Le caractère < ne peut pas être utilisé dans une valeur d'attribut. Erreur de traitement de la ressource file:///C:/Program Files/EasyPHP/www/Perso/theque.xsl. Ligne 31, Position 16

<img src='<xsl:value-of select="ImgAlbum"/>'/>
---------------^

sinon j'ai tout qui marche si j'enleve la balise <img...>
Ajouter un commentaire
Réponse
+0
moins plus
Super merci ca marche !!! :D
Ajouter un commentaire
Réponse
+0
moins plus
c cool
si tu veux savoir pkoi ca marche n'hésite pas à demander.
Surtout que çà peut servir dans pas mal d'autre cas. (les liens hypertextes classiques doivent utiliser çà aussi par exemple)
Ajouter un commentaire
Réponse
+0
moins plus
Je te remercie je pense que j'ai compris le principe
c clair que c utile et il ne me semble pas l'avoir vu dans le tutorial du site...
Ajouter un commentaire
Réponse
+0
moins plus
La balise attrib n'est pas dans le tutoriel xsl de CCM.
J'avais cherché à l'époque
Ajouter un commentaire
Réponse
+0
moins plus
t'as fait comment Sandy !!!?
Ajouter un commentaire
Ce document intitulé « image en xml » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook