Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1019 connectés 

  FORUM HardWare.fr
  Programmation
  XML/XSL

  Passage de paramètre PHP/JS -> XSL ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Passage de paramètre PHP/JS -> XSL ?

n°1278721
LeMakisar
Posté le 07-01-2006 à 14:59:41  profilanswer
 

Je ne sais pas si ca se fait, j'ai bien une méthode pour passer par du xsql, mais il faudrait que j'évite ...
 
donc est ce possible de faire un truc comme :
 

Code :
  1. Header("Location: monfichier.xml?parametre=..." );


 
et ensute de récupérer paramtre ds le xsl :??:
Je sais que c'est bidon, mais je n'ai pas d'autre choix que d'utiliser du XML :)
 
Merci !


Message édité par LeMakisar le 08-01-2006 à 16:54:03
mood
Publicité
Posté le 07-01-2006 à 14:59:41  profilanswer
 

n°1278740
esox_ch
Posté le 07-01-2006 à 15:36:59  profilanswer
 

Pourquoi ne pas faire tout le traitement avec dom ?


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1278745
LeMakisar
Posté le 07-01-2006 à 15:49:55  profilanswer
 

mon problème est que je suis totalement débutant et je ne connais pas du tout DOM ...
 
J'ai trouvé une solution à mon problème, mais qui ne semble pas fonctionner (du moins pas avec la version de PHP dont je dispose ...)
 
Si tu peux me donner un exemple ou une piste pour DOM pour que je recherche je cracherais pas dessus :)
 
edit : visiblement après un coup d'oeil rapide, DOM c'est tou ce qui est xslt_process & co ? ca ne marche pas que sous PHP5 ca ?


Message édité par LeMakisar le 07-01-2006 à 15:51:44
n°1278748
LeMakisar
Posté le 07-01-2006 à 15:57:19  profilanswer
 

en effet, ca en veut pas :/
 
Fatal error: Cannot instantiate non-existent class: domdocument in ....
 
d'après ce que j'ai vu, ca vient de la configuration de PHP, donc c'est mort en somme ...

n°1279160
LeMakisar
Posté le 08-01-2006 à 16:47:54  profilanswer
 

:bounce:
 
Pour finalemen je teste autre chose, qui n'a pas l'air de marcher non plus ...
la même chose en JS en fait :  
 
Voila mon cde :  
 

Code :
  1. <html>
  2. <script language="javascript">
  3. function strHTML(PathXML,
  4. PathXSL,valParam) {
  5. var xslt = new ActiveXObject("Msxml2.XSLTemplate" );
  6. // chargement du fichier XSL  
  7. var xsl = new ActiveXObject("Msxml2.FreeThreadedDOMDocument" ) ;
  8. xsl.async = false;
  9. xsl.load(PathXSL);
  10. if (xsl.parseError.errorCode != 0) {
  11.      var myErr = xsl.parseError;
  12.      alert("Erreu XSLT: " + myErr.reason);
  13. } else {
  14.  xslt.stylesheet = xsl;
  15.  // chargement du fichier XML  
  16.  var xml = new ActiveXObject("Microsoft.XMLDOM" );
  17.  xml.async = false;
  18.  xml.load(PathXML);
  19.  if (xml.parseError.errorCode != 0) {
  20.         var myErr = xml.parseError;
  21.         alert("Erreur XML: " + myErr.reason);
  22.      } else {
  23.   // Instanciation d'un processeur XSLT et ajout des parametres à la xsl  
  24.   var xslProc = xslt.createProcessor();
  25.   xslProc.input = xml;
  26.   xslProc.addParameter("valeur", valParam);
  27.   // retourne la transformation en Html  
  28.   xslProc.transform();
  29.   document.getElementById('resultat').innerHTML = xslProc.output;
  30.  }
  31. }
  32. }
  33. </script>
  34. <body onLoad="strHTML('<?php echo "commandes_tmp$idClient.xml";?>','<?php echo "commandes_archivees.xsl";?>','<?php echo $id;?>');">
  35. <div id="resultat">
  36. </div>
  37. </body>
  38. </html>


 
j'ai vérifié les valeurs passées à la fonction js sont OK, mais la sortie ne marche pas !
 
Extrait de mon fichier XSL :

Code :
  1. <?xml version="1.0" encoding="ISO-8859-1" ?>
  2. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  3. <xsl:output method="html"/>
  4. <xsl:template match="/">
  5.   <xsl:param name="valeur" />
  6.   id <xsl:value-of select="$valeur" />
  7. </xsl:template>
  8. ....
  9. </xsl:stylesheet>


 
Par contre le xml commence par :  
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet href="commandes_archivees.xsl" type="text/xsl"?>
 
Je sais pas s'il faut garder ou non la 2e ligne, donc j'ai essayé avec et sans, mais sans succès ...
 
En gros tout ce que ca m'affiche c'est : "id=" et rien d'autre ...
 
si qqn a la moindre idée, parce que la je craque de pas arriver à faire marcher un trc aussi con :cry:

n°1279164
LeMakisar
Posté le 08-01-2006 à 17:11:56  profilanswer
 

ca y est j'ai trouvé l'erreur, en fait le <xsl:param name="valeur" /> dot être en tout début de document XSL, donc voila :)
 
j'espère que ca aidera du monde un jour ou lautre :D


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  XML/XSL

  Passage de paramètre PHP/JS -> XSL ?

 

Sujets relatifs
Parametre de fonction[PHP] Quelques questions !
afficher un message au passage de la souris[Pb PHP] Telechargement de gros fichier
Editeur pour programmer en PHP[RESOLU]Passer un paramètre avec des espaces
probleme accent php5 avec XML/XSL[PHP] Droits d'écriture dans un dossier créé avec mkdir() ?
flash et PHPProblème durée session PHP
Plus de sujets relatifs à : Passage de paramètre PHP/JS -> XSL ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR