Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> XSL-Jak wypisać zmienną ?
thunder333
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 7.03.2009

Ostrzeżenie: (0%)
-----


Witam, potrzebuję pomocy, bo choć sprawa wydaje się banalna mi sie nei udaje:
więc mam zmienną w xsl:
<xsl:if test="boolean($y= 'cos_tam') = true()">
<xsl:variable name="m11" select="wartosc"/>
</xsl:if>
wartosc jest liczbą w pliku xml
a potem robie:
<td>
<xsl:value-of select="//m11" />
</td>
wszystko jest ok, ale w komorce pojawia sie NaN

Dlaczego to nie działa?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
ale w komorce pojawia sie NaN

To na pewno liczba? Pokaż kawałek XML-a, bo NaN = Not a Number.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
thunder333
post
Post #3





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 7.03.2009

Ostrzeżenie: (0%)
-----


na pewno oto kod :
<pozycja>
<okres_wew>X</okres_wew>
<wartosc waluta="zl">6000</wartosc>
</pozycja>

Ok wiem juz gdzie jest problem więc tak, tą zmeinną deklaruję w bloku warunkowym :
<xsl:if test="boolean(tutaj mam jakis warunek) = true()">
<xsl:variable name="m1" select="wartosc"/>
</xsl:if>
jest kilka takich warunkow w petli for-each, zapisuje wartosci do roznych elementow. potem mam taki kod(juz po petli for-each):
<td >
<xsl:value-of select="$m1" />
</td>
i dostaje komunikat o błędzie :
Variable or parameter 'm1' is undefined.
czyli zmienna jest lokalna, ale jak zadeklaruje ją globalnie to potem jak robię <xsl:variable name="m1" select="wartosc"/> to poza blokiem jej wartosc sie eni zmienia, jak sie odwołać do tej zmiennej globalnej ?


Ps. mam firefoxa i nie działaja mi znaczniki xmla na forum

Ten post edytował thunder333 8.03.2009, 02:01:17
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Kod
<xsl:value-of select="{$m1}" />

?


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
thunder333
post
Post #5





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 7.03.2009

Ostrzeżenie: (0%)
-----


dzięki, ale niestety nie działa, mam błąd
line 143: Error parsing XPath expression '{$m1}'.
line 143: Required attribute 'select' is missing.
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A po prostu?
Kod
{$m1}

w template


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
thunder333
post
Post #7





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 7.03.2009

Ostrzeżenie: (0%)
-----


cały dokument jest objęty znacznikiem <xsl:template match="/">
dokument się waliduje

CODE

<td>
<!-- xsl:value-of select="{$m3}" /-->
{$m1}
</td>

coś takiego ?
próbowałem na różne sposoby odwoływać do niej, do tej zmienne powinienem się móc odwoływać w znaczniku oznaczonym jako template - bo to zmienna lokalna, i tak właśnie robię?

Podsumoawnie: mój problem tkwi w tmy że mam znacznik template w nim jakąś pęle foreach w niej warunek w któym nastepuije utworzenie i pszypisanie wartosci do zmiennej m1 (na pewno się przypisuje bo sprawdzałem), i w tym samym bloku template, pod znacnzikiem kończącym pętle foreach próbuję ją wpisać do komórki tabeli i to się nie udaje bo twierdzi że zmienna nie istnieje, przeszukałem już wiele stron ale nigdzie nie mogę znaleźć odpowiedzi. Dzięki za konkretne podpowiedzi, ale niestety żadna nie chcce narazie zadziałać sad.gif

Ten post edytował thunder333 8.03.2009, 15:45:06
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 06:01