Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: XSL + zmienne...
Forum PHP.pl > Forum > XML, AJAX > XML
Wedrowiec
Witam


Nie wiem nawet jak do końca to nazwać... w każdym razie plik XSL:

Kod
<xsl:template match="/">
    <plik>
    <xsl:apply-templates select="unia"/>
    </plik>
</xsl:template>

<xsl:template match="unia">
    <xsl:apply-templates select="info"/>
    <lista_ofert>


    <dzial tab="domy" typ="sprzedaz">
         <xsl:apply-templates select="rynek_wtorny/rekord[typ_nieruchomosci='dom' and typ_transakcji='oferta sprzedaży']"/>
         <xsl:apply-templates select="rynek_wtorny/rekord[typ_nieruchomosci='dom' and typ_transakcji='oferta sprzedaży/wynajmu']"/>
    </dzial>
    <dzial tab="domy" typ="wynajem">
         <xsl:apply-templates select="rynek_wtorny/rekord[typ_nieruchomosci='dom' and typ_transakcji='oferta wynajmu']"/>
         <xsl:apply-templates select="rynek_wtorny/rekord[typ_nieruchomosci='dom' and typ_transakcji='oferta sprzedaży/wynajmu']"/>
    </dzial>

    </lista_ofert>

<xsl:template match="rynek_wtorny/rekord">
    <xsl:choose>
    <xsl:when test="status='u'">
    <oferta_usun>
    <id><xsl:value-of select="klucz"/></id>
    </oferta_usun>
    </xsl:when>
    <xsl:otherwise>
    <oferta>
    <id><xsl:value-of select="klucz"/></id>

    <cena waluta="PLN"><xsl:value-of select="cena"/></cena>

</oferta>


W pliku XML dostaje 2 pola - cena i cena2

w

Kod
    <dzial tab="domy" typ="sprzedaz">
         <xsl:apply-templates select="rynek_wtorny/rekord[typ_nieruchomosci='dom' and typ_transakcji='oferta sprzedaży']"/>
         <xsl:apply-templates select="rynek_wtorny/rekord[typ_nieruchomosci='dom' and typ_transakcji='oferta sprzedaży/wynajmu']"/>
    </dzial>


powinna być brana cena

natomiast w
Kod
    <dzial tab="domy" typ="wynajem">
         <xsl:apply-templates select="rynek_wtorny/rekord[typ_nieruchomosci='dom' and typ_transakcji='oferta wynajmu']"/>
         <xsl:apply-templates select="rynek_wtorny/rekord[typ_nieruchomosci='dom' and typ_transakcji='oferta sprzedaży/wynajmu']"/>
    </dzial>


powinna być cena2

ktoś pomoże? ja już wymiekłem.
Sh4dow
pokaz moze jak wyglada jeszcze xml, a ten pierwszy plik to nie wiem co to jest ale ani to xml ani xsl. Jakies takie blink.gif dziwne dla mnie
Wedrowiec
dobra troche namieszalem. powyzszy kod to arkusz xslt, a raczej jego fragment.

wejsciowy XML:

Kod
<?xml version='1.0' encoding='Windows-1250' standalone='yes'?>
<unia>
<wersja>2.1</wersja>
<info>
</info>
<rynek_wtorny>
  <rekord>
   <typ_transakcji>oferta sprzedaży/wynajmu</typ_transakcji>
   <klucz>11234-65</klucz>
   <cena>683000</cena>
   <cena2>3000</cena2>
  </rekord>
</rynek_wtorny>
</unia>


czyli wyjsciowy XML ma zawierac 2 rekordy - jeden z polem cena = cena1 drugi cena=cena2

już mózg mi się lasuje od tego więc zaczynam lekko bredzić :/
Sh4dow
czy ty to przeksztalcasz na jakis html ? czy jakies inne cudo ? bo ten pierwszy xslt jakos dziwnie mi wyglada.
Wedrowiec
przekształcam XML na... XML ale w moim formacie smile.gif))
Sh4dow
chyba zabralko ci w <rekord> pola <typ_nieruchomosci> jesli dobrze rozumiem ten xls.
A wogole przy takich rzeczach nie lepiej uzywac <xsl:if> questionmark.gif? bo jesli dobrze widze to masz warunki zwykle.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.