Avatar billede alfred Nybegynder
04. januar 2002 - 11:39 Der er 8 kommentarer og
1 løsning

URL encode link

Hvordan får jeg urlencoded mit link via xsl?

Min code ser således ud:
<a>
            <xsl:attribute name=\"href\">
                <xsl:choose>
                    <xsl:when test=\"../D:propstat/D:prop/D:getcontenttype=\'httpd/unix-directory\'\">
                        ?offset=<xsl:value-of select=\".\"/>
                    </xsl:when>
                    <xsl:otherwise>
                        http://www.something.dk<xsl:value-of select=\".\" />
                    </xsl:otherwise>
                </xsl:choose>

                </xsl:attribute>
            <xsl:value-of select=\".\" />
        </a>
Avatar billede getalife Nybegynder
04. januar 2002 - 12:12 #1
Jeg ville nok vælge at gøre det på en lidt anden måde:

<xsl:choose>
<xsl:when test=\"../D:propstat/D:prop/D:getcontenttype=\'httpd/unix-directory\'\">
<a><xsl:attribute name=\"href\">
?offset=<xsl:value-of select=\".\"/></xsl:attribute><xsl:value-of select=\".\" />
</a>
</xsl:when>
<xsl:otherwise>
<a><xsl:attribute name=\"href\">http://www.something.dk<xsl:value-of select=\".\" /></xsl:attribute>select=\".\" /></a>
</xsl:otherwise>
</xsl:choose>
Avatar billede alfred Nybegynder
04. januar 2002 - 13:02 #2
Det løser ikke problemet med url encoding....
Avatar billede getalife Nybegynder
04. januar 2002 - 13:33 #3
Sorry.. så forstår jeg ikke hvad du mener :o(
Avatar billede alfred Nybegynder
04. januar 2002 - 13:44 #4
Linket skal bare url encodes, dvs. <xsl:value-of select=\"url:encode(.)\"> eller noget i den stil. Jeg kan bare ikke finde syntaksen for det.
Avatar billede codebase Praktikant
04. januar 2002 - 21:07 #5
er ikke sikker på art jeg er med på hvad dit problem er, men der finden en kommando der hedder urlencode samt urldecode.

http://www.php.net/manual/en/function.urlencode.php

men hvor dan du strikker det ind i din XSL kode, har jeg ingen ide om!
Avatar billede alfred Nybegynder
06. januar 2002 - 15:58 #6
codebase << Det har jo ikke noget med sagen at gøre. Det er ikke php, så det hjælper ikke rigtigt så meget :-)

Avatar billede janegil Nybegynder
14. januar 2002 - 09:07 #7
Tror ikke den finnes, fantes den, skulle det være på http://www.w3.org/TR/xpath#section-String-Functions.

Men hvis du har skrevet XML for hånd, kan du vel også url-kode for hånd. Er XML\'en automatsik generert, så finnes sikkert funksjonen i det verktøyet som har generert den?
Avatar billede alfred Nybegynder
14. januar 2002 - 09:44 #8
janegil << XML\'en er automatisk genereret, men der er ikke mulighed for at sætte den til at url encode linksne.

Jeg tror at løsningen må være at jeg laver en funktion der urlencoder/decoder det når jeg modtager det.

/alfred
Avatar billede 3case Nybegynder
21. januar 2002 - 10:36 #9
Jeg forstår heller ikke helt hvad du mener, men jeg tror du leder efter:

a) disable-output-escaping=\"yes\"

b) concat(); funktionen

begge i <xsl:value-of ... />
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester