[HTML] Visualizzare XML formattato in HTML

sunlightbanana

Utente Attivo
26 Ott 2011
96
0
6
Salve a tutti,
io vorrei visualizzare un file XML in una pagina HTML, per adesso utilizzo questo semplice metodo:
HTML:
<html>
<head>
</head>
<body>

<textarea rows="20" cols="50">
<?xml version="1.0" encoding="ISO-8859-1"?>
<catalog>
  <cd>
   <title>Empire Burlesque</title>
   <artist>Bob Dylan</artist>
   <year>1985</year>
  </cd>
</catalog>
</textarea>

</body>
</html>

In questo modo però si visualizza come se fosse un testo normale, mi chiedevo se qualcuno conosce qualche tool o ha qualche consiglio per poter visualizzare quel testo XML formattato, in modo che sia più chiaro.

Grazie a tutti per la collaborazione!
 
Prova cosi e fammi sapere!

HTML:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method='html' version='1.0' encoding='UTF-8' indent='yes'/>

 <xsl:template match="/">

<html>
<body>
<table border="1">
<tr bgcolor="#ccc">
 <xsl:for-each select="mialibreria/cd">
   <th><title>Empire Burlesque</title></th>
   <td><artist>Bob Dylan</artist></td>
   <td><year>1985</year></td>
</tr>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
 
Scusami mi sono accorto dopo elimina il tag
HTML:
<title></title>
 
Grazie per la tua risposta ma in questo modo:
FILE XML:
Codice:
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="prova.xsl"?>

<catalog>
  <cd>
   <title>Empire Burlesque</title>
   <artist>Bob Dylan</artist>
   <year>1985</year>
  </cd>
   <cd>
    <title>Knocked Out Loaded</title>
    <artist>Bob Dylan</artist>
    <year>1986</year>
  </cd>
  <cd>
    <title>Down in the Groove</title>
    <artist>Bob Dylan</artist>
    <year>1988</year>
  </cd>
</catalog>

FILE XSL:
Codice:
<?xml version='1.0'?>
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:output method='html'/>
<xsl:template match='/'>
<html>
    <head>
    </head>
    <body>
        <xsl:apply-templates/>
    </body>
</html>
</xsl:template>

<xsl:template match='catalog'>         
    <xsl:apply-templates/>       
</xsl:template>

<xsl:template match='cd'>
    <table border="1">
        <tr bgcolor="#ccc">
            <td><title><xsl:value-of select='title'/></title></td>
            <td><artist><xsl:value-of select='artist'/></artist></td>
            <td><year><xsl:value-of select='year'/></year></td>
        </tr>
    </table>
</xsl:template>

</xsl:stylesheet>

visualizzo solo gli elementi all'interno del file XML nella pagina web, io invece devo visualizzare i tag anche, devo visualizzare il file XML così com'è nella pagina HTML.
Ho provato con iframe ma nascono molti errori purtroppo.
 
Potresti usare javascript per leggere il file e stamparlo a video
 
Purtroppo non conosco bene javascript, io lavoro per lo più con PHP, solo che la pagina che devo creare deve essere in HTML, qualche comando javascript che mi può essere utile per leggere quei file e stamparli a video.
Grazie mille per l'aiuto.
 
ho inteso che vuoi ottenere il file xml riprodotto in una pagina html, tipo lo screenshot allegato,
se così è, con php,
leggi il file xml riga x riga
sostituisci nella riga i caratteri
"spazio" con "&nbsp;" (che non siano tra i tag)
"<" con "&lt;"
">" con "&gt;"
stampa la riga
ottieni esattamente il contenuto dello screenshot
 

Allegati

  • Cattura.PNG
    Cattura.PNG
    17,6 KB · Visite: 742
  • Like
Reactions: sunlightbanana
Esatto potresti anche provare così:
Codice:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Documento senza titolo</title>
</head>

<body>
<pre>
&lt;?xml version="1.0"?&gt;

&lt;rubrica&gt;
   &lt;amico&gt;
      &lt;nome&gt;Gennaro&lt;/nome&gt;
      &lt;cognome&gt;Esposito&lt;/cognome&gt;
      &lt;telefono&gt;081-0000000&lt;/telefono&gt;
      &lt;indirizzo&gt;Via Riviera di Chiaia&lt;/indirizzo&gt;
      &lt;citta&gt;Napoli&lt;/citta&gt;
   &lt;/amico&gt;
   &lt;amico&gt;
      &lt;nome&gt;Paolo&lt;/nome&gt;
      &lt;cognome&gt;Rossi&lt;/cognome&gt;
      &lt;telefono&gt;02-00000000&lt;/telefono&gt;
      &lt;indirizzo&gt;Piazza del Duomo&lt;/indirizzo&gt;
      &lt;citta&gt;Milano&lt;/citta&gt;
   &lt;/amico&gt;
&lt;/rubrica&gt;
</pre>
</body>
</html>
 
  • Like
Reactions: sunlightbanana
ok, riguardo il colore in questo modo potrei usare i CSS, tipo:

Codice:
<span style="color: #00ffff">&lt;?</span><span style="color: #0000ff">xml</span> <span style="color: #ffb90f">version</span><span style="color: #fff">="1.0"</span><span style="color: #00ffff">?&gt;</span>

naturalmente senza la versione inline

Grazie per l'aiuto!
 

Discussioni simili