Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    583

    formattare xml a tabella

    Ciao a tutti,
    ho un xml di questo tipo (semplificato):

    Codice PHP:
    <prodotto>testo</prodotto>
    <
    prodotto>testo</prodotto>
    <
    prodotto>testo</prodotto>
    ... 
    Come faccio a vestirlo con un XSLT in modo tale che i vari prodotti si visualizzino in una tabella con n righe e 2 colonne.

    Cioè

    Codice PHP:
    <table>
    <
    tr>
    <
    td>prodotto 1</td>
    <
    td>prodotto 2</td>
    </
    tr>
    <
    tr>
    <
    td>prodotto 3</td>
    <
    td>prodotto 4</td>
    </
    tr>
    </
    table
    Grazie

  2. #2
    ciao, sono un po' arrugginito, ma potresti provare una cosa del genere:

    codice:
    <?xml version='1.0'?>
    
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    
    
    <xsl:template match="/prodotti">
    <html>
    <body>
    <table>
     <xsl:for-each select="prodotto">  
     <xsl:if test="position()=1 or ((position() mod 2!=0) and position()!=2)"><tr></xsl:if>
     <td><xsl:value-of select="."/></td>
     <xsl:if test="position() mod 2=0"></tr></xsl:if>
     </xsl:for-each>
    </table>
    </body>
    </html>
    </xsl:template>
    
    
    </xsl:stylesheet>
    saluti

  3. #3
    sicuramente il codice precedente non funziona.
    questo lo fa sicuramente:

    codice:
    <?xml version='1.0'?>
    
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    
    <xsl:template match="/">
    	<html>
    	<body>
    		<xsl:apply-templates select="/prodotti" />
    	</body>
    	</html>
    </xsl:template>
    
    <xsl:template match="/prodotti">
    	<table>
    	<xsl:for-each select="prodotto[position() mod 2 != 0]">
    		<tr>
    			<td><xsl:value-of select="."/></td>
    			<td><xsl:value-of select="following-sibling::*"/></td>
    		</tr>
    	</xsl:for-each>
    	</table>
    </xsl:template>
    
    
    </xsl:stylesheet>
    ringrazio Simone J.E. per la consulenza fornitami.

    saluti

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    583
    La dritta è davvero buona, non ci avevo pensato.

    L'xml è un po' più complesso, ma credo di riuscire a destreggiarmi.

    Grazie mille.

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.