Prob avec Javascipt et accssoirement xml

Thepp Messages postés 1 Date d'inscription mercredi 28 août 2002 Statut Membre Dernière intervention 28 août 2002 - 28 août 2002 à 11:40
guilhemh Messages postés 36 Date d'inscription lundi 22 avril 2002 Statut Membre Dernière intervention 12 décembre 2005 - 2 sept. 2002 à 21:38
Mon probl est 2 niveaux
- je dispose d'un fichier xml et celui-ci ne comporte pas de rfrence un fichier Xsl (masque d'affichage), je voudrais trouver un moyen de lier les deux fichiers (le Xml est fourni par un tier et le Xsl par moi)
- S'il nexiste pas de solution directe au premier problme j'avais pens 'tout simplement' lire le fichier source Xml et le recrire modifi sur mon site (mais l, je sais pas trop comment faire)

Si quelqu'un pouvait m'aider

PS: J'oubli mon provider ne supporte pas les langage volu (asp, php,....) mais bon a je peux facilement contourner si il le faut.

Thepp

1 réponse

guilhemh Messages postés 36 Date d'inscription lundi 22 avril 2002 Statut Membre Dernière intervention 12 décembre 2005
2 sept. 2002 à 21:38
Si ton navigateur possede un moteur XSL tu peux l'ecrire en javascript :

<XML id="XMLDatas">

<?xml version="1.0"? src="essai.xml"></XML>
<XML id="FeuilledeStyle" src="essai.xsl"></XML>

<SCRIPT LANGUAGE="JavaScript">

function transformationXMLavecXSL()
{
document.body.innerHTML = XMLDatas.transformNode(FeuilledeStyle.XMLDocument);
}
</SCRIPT>

Sinon il faut utiliser un moteur XSL cote serveur
la tout dépens du langage mais c'est facile, apres c'est juste une question de gout et de disponibilité de l'extension
en ASP --> toujours la : moteur IE
en PHP / JSP --> expat

exemple en php
$th = @xslt_create() or die("Can't create XSLT handle!");
$XML_File = $URL_Data."/data.xml";
$xh = fopen($XML_File, "r") or die("Can't open XML file");

$XSL_File = $URL_Data."/index.xsl";
$sh = fopen($XSL_File, "r") or die("Can't open XSL file");

$XML_Content = fread($xh, filesize($XML_File));

$XSL_Content = fread($sh, filesize($XSL_File));

xslt_process($XSL_Content, $XML_Content, $XSL_Transformation);

echo $XSL_Transformation;

@xslt_free($th);
fclose($HTML_File_Index);
0
Rejoignez-nous