Problem prosty, a rozwiązania potrzebuje jak najszybciej ;/

Dodaję obrazek, i działa, wygenerowoany zostaje obrazek w <img src="5.jpg />: ($image-dir właściwie niepotrzebne)

xml:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <wpisy>
  3.  <gosc>
  4.    <nazwa>5</nazwa>
  5.  </gosc>
  6. </wpisy>


xsl:

  1. <?xml version="1.0" encoding="utf-8"?>
  2.  
  3. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  4.  <xsl:variable name="image-dir"></xsl:variable>
  5.  <xsl:template match="wpisy/gosc">
  6.    <img src="{$image-dir}{nazwa}.jpg" />
  7.  </xsl:template>
  8. </xsl:stylesheet>



Dodaje tekst, i działa

xml

  1. <wpisy>
  2.  <gosc>
  3.    <tytul>7</tytul>
  4.    <opis>7</opis>
  5.    <technologia>7</technologia>
  6.  </gosc>
  7. </wpisy>


xls

  1. <xsl:template match="wpisy/gosc">
  2.    <xsl:for-each select="/">
  3.  
  4.          <xsl:value-of select="tytul"/>
  5.  
  6.        <xsl:value-of select="opis"/>
  7.  
  8.          <xsl:value-of select="technologia"/>
  9.  
  10.    </xsl:for-each>
  11.  </xsl:template>






No to teraz chce dodać i tekst i obrazek za jednym zamachem. I gubię się całkowicie:

xml

  1. <wpisy>
  2.  <gosc>
  3.    <nazwa>7</nazwa>
  4.    <tytul>7</tytul>
  5.    <opis>7</opis>
  6.    <technologia>7</technologia>
  7.  </gosc>
  8. </wpisy>


xsl
  1. <?xml version="1.0" encoding="utf-8"?>
  2.  
  3. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  4.  <?xml-stylesheet type="text/xsl" href="works.xsl"?>
  5.  
  6.  <!--<xsl:variable name="image-dir"></xsl:variable>-->
  7.  
  8.  <xsl:template match="wpisy/gosc2">
  9.    <table>
  10.      <xsl:apply-templates select="A"/>
  11.      <xsl:apply-templates select="B"/>
  12.    </table>
  13.  </xsl:template>
  14.  
  15.  <xsl:template match="A">
  16.    <img src="{nazwa}.jpg" />
  17.  </xsl:template>
  18.  
  19.  <xsl:template match="B">
  20.    <xsl:for-each select="/">
  21.    <tr>
  22.        <td>
  23.          <xsl:value-of select="tytul"/>
  24.        </td>
  25.      </tr>
  26.      <tr>
  27.        <xsl:value-of select="opis"/>
  28.      </tr>
  29.      <tr>
  30.        <td>
  31.          <xsl:value-of select="technologia"/>
  32.        </td>
  33.      </tr>
  34.    </xsl:for-each>
  35.  </xsl:template>
  36.  
  37.  
  38. </xsl:stylesheet>




Jedyne, co się dzieje, to przesyłane są same parametry w postaci tekstu, obrazka nie zamienia na postac jpg. Dziwne rzeczy się poza tym dzieją... pomimo, że wszędzie deklaruję <gosc> nic nie jest przesyłane, jeśli nie wpisze wpisy/gosc2

i zapewne tu tkwi problem. Może jeszcze w zagnieższeniu, ale pomimo godzin spędzonych przed google jestem bezradny.

Kod w aspx.cs:

private void DodajPFXML(XmlDocument dokument, XmlElement element, string tag, string wartosc)
{
XmlElement nowaGalaz = dokument.CreateElement(tag);
XmlText tekst = dokument.CreateTextNode(wartosc);
element.AppendChild(nowaGalaz);
nowaGalaz.AppendChild(tekst);
}

protected void Button4_Click(object sender, EventArgs e)
{

XmlDocument wpisy = new XmlDocument();
wpisy.Load(Server.MapPath("works.xml"));
XmlElement nowyWpis;
nowyWpis = wpisy.CreateElement("gosc");
wpisy.DocumentElement.PrependChild(nowyWpis);
DodajPFXML(wpisy, nowyWpis, "nazwa", TextBox7.Text);
DodajPFXML(wpisy, nowyWpis, "tytul", TextBox8.Text);
DodajPFXML(wpisy, nowyWpis, "opis", TextBox9.Text);
DodajPFXML(wpisy, nowyWpis, "technologia", TextBox10.Text);
wpisy.Save(Server.MapPath("works.xml"));
Response.Redirect("main.aspx");


}




Wątek był już poruszany http://forum.php.pl/index.php?showtopic=12...rt=#entry615031 , jednak problem wydaje mi się nieco bardziej skomplikowany, inna sprawa że z wyjaśnienia zupełnie nic nie zrozumiałem a kod <img src="<xsl:value-of select="autor"/>" alt="foto" /> jest niemożliwy do wklepania bo generuje błędy;/