Hallo Allerseits,
vor Kurzem habe ich mich an das Thema "XML & XSLT" heran gewagt und komme soweit ganz gut zurecht. Nun habe ich mich an ein kleines Projekt heran gewagt, wo ich auf ein (für mich sehr grosses) Problem gestossen bin.
Mein Problem:
Ich möchte eine Website mit einem Lexikon machen, in welchem alphabetisch Orte und Beschreibungen aus Island angezeigt werden. Den dazugehörigen Datensatz hab ich in einer XML-Datei in diesem Format geschrieben:
< EINTRAG >
< BUCHSTABE > A < /BUCHSTABE >
< ORT > Aðalbólsheiði < /ORT >
< TYP > Heide < /TYP >
< KOORDN > 65°05'60"N < /KOORDN >
< KOORDW > 20°30'00"W < /KOORDW >
< CONTENT > Ein Heidegebiet zwischen den Flüssen Austurá und Víðidalsá. Südlich davon befindet sich der Gletscher Eíriksjökull< /CONTENT >
< /EINTRAG >
Mittels einer XSLT-Datei lese ich die Daten aus und gebe sie auf der Internetseite wieder. Mit dem Befehl:
< xsl:for-each select="LEXIKON/EINTRAG[BUCHSTABE='[b]A[/b]']" >
< xsl:sort select="ORT"/ >
kann ich sämtliche Einträge des Buchstaben "A" ausgeben (alles andere wird ignoriert).
Nun möchte ich aber, dass wenn ich auf einen Link klicke (zB "Buchstabe B") alle Daten nur aus "B" ausgelesen werden. Theoretisch geht das mit
< xsl:for-each select="LEXIKON/EINTRAG[BUCHSTABE='[b]B[/b]']" >
Nun meine Frage:
Wie kann ich dieses [BUCHSTABE='B'] dynamisch gestalten, so dass der Wert "B" gegen das ausgetauscht wird, was gerade angeklickt wird (zB "c" oder "d"?). Ich habs mit einer Variablen versucht:
< xsl:for-each select="LEXIKON/EINTRAG[BUCHSTABE='[b]{$wert}[/b]']" >
$wert habe ich vorher definiert (mit VARIABLE name="wert" etc). Leider klappt das alles nicht.
Wie gehe ich am Besten vor? Wie kann ich dieses Problem lösen?
Würde mich freuen wenn mir da jemand helfen könnte.
Danke im Vorraus,
Ravey76
vor Kurzem habe ich mich an das Thema "XML & XSLT" heran gewagt und komme soweit ganz gut zurecht. Nun habe ich mich an ein kleines Projekt heran gewagt, wo ich auf ein (für mich sehr grosses) Problem gestossen bin.
Mein Problem:
Ich möchte eine Website mit einem Lexikon machen, in welchem alphabetisch Orte und Beschreibungen aus Island angezeigt werden. Den dazugehörigen Datensatz hab ich in einer XML-Datei in diesem Format geschrieben:
< EINTRAG >
< BUCHSTABE > A < /BUCHSTABE >
< ORT > Aðalbólsheiði < /ORT >
< TYP > Heide < /TYP >
< KOORDN > 65°05'60"N < /KOORDN >
< KOORDW > 20°30'00"W < /KOORDW >
< CONTENT > Ein Heidegebiet zwischen den Flüssen Austurá und Víðidalsá. Südlich davon befindet sich der Gletscher Eíriksjökull< /CONTENT >
< /EINTRAG >
Mittels einer XSLT-Datei lese ich die Daten aus und gebe sie auf der Internetseite wieder. Mit dem Befehl:
< xsl:for-each select="LEXIKON/EINTRAG[BUCHSTABE='[b]A[/b]']" >
< xsl:sort select="ORT"/ >
kann ich sämtliche Einträge des Buchstaben "A" ausgeben (alles andere wird ignoriert).
Nun möchte ich aber, dass wenn ich auf einen Link klicke (zB "Buchstabe B") alle Daten nur aus "B" ausgelesen werden. Theoretisch geht das mit
< xsl:for-each select="LEXIKON/EINTRAG[BUCHSTABE='[b]B[/b]']" >
Nun meine Frage:
Wie kann ich dieses [BUCHSTABE='B'] dynamisch gestalten, so dass der Wert "B" gegen das ausgetauscht wird, was gerade angeklickt wird (zB "c" oder "d"?). Ich habs mit einer Variablen versucht:
< xsl:for-each select="LEXIKON/EINTRAG[BUCHSTABE='[b]{$wert}[/b]']" >
$wert habe ich vorher definiert (mit VARIABLE name="wert" etc). Leider klappt das alles nicht.
Wie gehe ich am Besten vor? Wie kann ich dieses Problem lösen?
Würde mich freuen wenn mir da jemand helfen könnte.
Danke im Vorraus,
Ravey76