Visualizzazione dei risultati da 1 a 6 su 6

Discussione: [XSL] foreach e link

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    54

    [XSL] foreach e link

    salve a tutti,
    e' da pochissimo che mi cimento nella creazione di pagine xsl. Il mio
    problema ora e' questo:
    ho un semplice xml che conterra' sempre 1 solo record:

    <?xml version="1.0" encoding="ISO-8859-1"?>
    <?xml-stylesheet type="text/xsl" href="mail.xsl"?>
    <mail>
    <message>
    <from_name>Dade</from_name>
    <from_address>io@qui.it</from_address>
    <subject>test</subject>
    <attach>
    <filename>pippo.txt</filename>
    </attach>
    <attach>
    <filename>pippo2.txt</filename>
    </attach>
    <message>
    </mail>

    vorrei riuscire a creare una pagina xsl con un foreach degli attach con i
    filename che sono dei link...
    io ho provato qualcosa del genere:

    <xsl:for-each select="mail/message/attach">
    <a href="file:///{mail/message/attach/filename}"><xsl:value-of
    select="filename"/></a>

    </xsl:for-each>

    ma non funziona Mi scrive il filename, ma il link non punta a nulla (solo
    file:///)... come posso risolvere?

    grazie a tutti

  2. #2
    ecco un foglio di stile adatto:

    codice:
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    
    <xsl:template match="/">
    <html>
    <head>
    <title>Titolo pagina</title>
    </head>
    <body>
    
    <xsl:for-each select="/mail/message/attach">
     <xsl:element name="a">
      <xsl:attribute name="href"><xsl:value-of select="filename"/></xsl:attribute>
      <xsl:value-of select="filename"/>
    
     </xsl:element>
    </xsl:for-each>
    
    </body>
    </html>
    </xsl:template>
    </xsl:stylesheet>
    occhio che, nel tuo documento XML, devi chiudere il tag message.
    cucca, un appunto: la prossima volta, prima di aprire una discussione, ti consiglio di dare una lettura alle indicazioni illustrate in questo thread, grazie.

    ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    54
    var, hai ragione... purtroppo mi sono accorto troppo tardi che il forum adotta i tag, ma purtroppo il forum non offre la possibilita' di editare i post quindi mi e' stato impossibile aggiungere il tag al titolo della discussione!

    sapresti consigliarmi qualche guida sugli xsl utilizzati per il layout come nel mio esempio? E' possibile anche creare un xsl con + xml?

    grazie e scusami per il tag

  4. #4
    Originariamente inviato da cucca
    sapresti consigliarmi qualche guida sugli xsl utilizzati per il layout come nel mio esempio? E' possibile anche creare un xsl con + xml?
    nel thread in rilievo trovi numerose risorse utili.
    cosa intendi per "creare un xsl con + xml"?

    ciao

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    54
    Originariamente inviato da var
    nel thread in rilievo trovi numerose risorse utili.
    cosa intendi per "creare un xsl con + xml"?

    ciao
    ti spiego: il mio scopo e' quello di dividere il codice (php) dalla grafica. Una situazione che potrebbe capitare e' quella in cui devo visualizzare i dati di 2 tabelle diverse tra loro... per fare un esempio l'anagrafica di un cliente e la lista dei suoi ordini, dove sicuramente avrei bisogno di 2 xml completamente diversi tra loro come struttura. In una situazione del genere, potrei ad esempio utilizzare il clienti.xml per i dati del cliente, e il ordini.xml per i suoi ordini? Oppure dovrei utilizzare per forza di cose 2 xsl?

    grazie 1000

  6. #6
    Utente di HTML.it L'avatar di Polley
    Registrato dal
    Jan 2005
    Messaggi
    696
    potresti utilizzare il document() per caricare un xml esterno e gestirlo con l'xsl ma conviene fare la trasformazione lato server, non sò se tutti i browser lo supportano

    potresti anche concatenare i due xml per gestirli con un'unico xsl

    oppure si può trasformare un xml con il suo xsl che richiama a sua volta un xsl il quale formatta un'altro xml per creare la struttura del documento


    ci sono svariate possibilità ma prima di procedere devi avere già progettato tutto il sito a tavolino per non creare casini


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.