XML / DTD / Codes caracteres speciaux

Fermé
Orel - 13 sept. 2003 à 22:53
 artouf - 15 juil. 2011 à 14:24
Bonjour,

Voila, j'ai un petit probleme avec la declaration des entites en DTD et l'interpretation XSLT qui s'en suit.

Voici un exemple, vous allez vite cerner le probleme :

- Fichier dtd.dtd :

<?xml version="1.0" encoding="ISO-8859-1"?>
<!ENTITY nbsp " ">
<!ENTITY eacute "é">
<!ENTITY egrave "è">

- Fichier xml.xml :
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE arbo SYSTEM "dtd.dtd">
<?xml-stylesheet href="xslt.xsl" type="text/xsl" ?>
<arbo>
<site>
<descriptif>Créion</descriptif>
etc...

- Affichage obtenu index.php :
Création

Snif :/

- Par contre pour le resultat au lancement xml.xml la tout va bien :
Création

- Voici le code de la page php :

<?php

$xsltproc = xslt_create();

$html = xslt_process($xsltproc, 'xml.xml', 'xslt.xsl');

if (!$html) die('XSLT processing error: '.xslt_error($xsltproc));

xslt_free($xsltproc);

echo $html;
?>

Bref je dois oublier de faire un petit quelque chose assez stressant :p

Cordialement,

Orel

P.S.: je suis sur que cela vient du fichier PHP.
A voir également:

4 réponses

GhostRaider
31 oct. 2007 à 09:58
Utilise la balise CDATA de la façon suivante:

<mabalise><![CDATA[la chaine de caractère que tu veux avec des <<<<< et des >>>>>>> autant que tu veux]]></mabalise>

Voilà c'est tout!
2
Probleme RESOLU !

Merci kd meme ;pp

Bon surf a tous :)
0
Résolu ok... mais comment ? lol
0
Question, comment faire un point d'exclamation à l'envers ??! Je trouve pas !!! HELP HELP HELP !! Please ;)
0
tu mets un " i " tout simplement, la lettre entre "h" et "j"...
0
comment ta fé pour resoudre ton probleme car moi j'arrive toujour pas a mettre le ">" et "<" dans e xml
tu pe m'aider stp
0