| |||||
| Dernière réponse | ||
|---|---|---|
| Sujet : [PHP - XML] Une question chaude... | ||
| Profil supprimé |
|
|
| Aperçu |
|---|
| Vue Rapide de la discussion |
|---|
|
| alien_nan | autant pour moi, c compilé sur le client ...je viens de verifier ... |
| alien_nan | es tu sur que la methode que j'ai donné est compilée sur le client ? La reference au fichier xsl est bien sur le serveur, pas sur le client... |
|
| alien_nan | Je ne sais pas si ca t'aideras, mais bon....
dans ton fichier XML, tu peux lui dire quel fichier xsl il utilise pour l'affichage grace à <?xml-stylesheet type="text/xsl" href="d:\test.xsl" ?> de cette facon, quand tu ouvres ton xml, le parsing est fait "directement", et tu as le resultat directement dans ton navigateur |
|
| Mara's dad | IL EST EN JAVA !
Donc il éxiste pour toute plateforme capable de faire tourner du JAVA (Java2 V > 1.2) Exemple : FOP -xml glossary.xml -xsl glossary.xsl -pdf glossary.pdf Avec en entrée : http://www.surleau.org/fop/glossary.xml http://www.surleau.org/fop/glossary.xsl Et donc en sortie : http://www.surleau.org/fop/glossary.pdf Trop fort non ? |
|
| Mara's dad | Ben, FOP c'est un processeur XSLT un peu particulier !
T'as essayé ? |
| donc le PDF c'est du texte ?
ou alors j'ai rien capté paske le processeur XSLT il te sort du texte ca c clair ! |
| Mara's dad | Ben depuis, j'ai testé FOP, c'est entre-autre fait pour sortir du PDF !
http://xml.apache.org/fop/index.html C'est en java, il faut donc une JRE ou un JDK pour faire tourner les exemples. |
|
| Mara's dad |
|
|
|
| youdontcare | tu ne pourras utiliser les objets COM que sous windows. par contre, il y a des extensions xml / xsl en php : http://www.php.net/manual/en/ref.xslt.php |
| DLR |
|
| En fait il faudrait que je puisse mettre en php en deuxieme parametre de transformNodeToObject un objet du meme type que "Response" en asp...
Y a t-il un équivalent de Response en php ? |
| Bon je me suis repenché sur le probleme...
Voila un script php qui me semblait correct. Mais il n'aime pas beaucoup la ligne en gras :( <?php $Source = new COM("Microsoft.XMLDOM" ) or Die("MSXML not found" ); $Source->async = false; $Source->load("cv.xml" ); $Buf = new COM("Microsoft.XMLDOM" ) or Die("MSXML not found" ); $Style = new COM("Microsoft.XMLDOM" ) or Die("MSXML not found" ); $Style->async = false; $Style->load("cv.xsl" ); echo $Source->transformNodeToObject($Style, $Buf); ?> En fait le probleme est que je n'arrive pas a convertir correctement la ligne asp suivante: source.transformNodeToObject(style, Response); Dans cette ligne de code le résultat est mis dans "response", qui est une variable de session en asp... En php cette variable n'existe pas(ou dumoins je ne la connais pas) et donc j'essaye d'afficher le HTML avec un echo. Mais ca foire: Warning: Invoke() failed: Erreur non spécifiée in d:\site\cv\cv.php3 on line 13 Une idée les balezes du php ?? :hello: |
| Merci JWhy :hello: Je vais me tenter la dessus, ca a pas l'air évident mais bon, ce devrait le faire ! |
| JWhy | il y a aussi cet article: http://www.phpbuilder.net/columns/alain20001003.php3 |
| JWhy | http://www.php.net/manual/en/class.com.php
RTFM!!! j/k ;) [jfdsdjhfuetppo]--Message édité par JWhy--[/jfdsdjhfuetppo] |
|
| JWhy | je crois avoir vu recemment que tu pouvais loader des objets COM+ en PHP, non ? ca te permettrait de faire la meme chose que ton exemple ASP (si ton serveur est sous windows, of course!)
je vais essayer de te retrouver le lien qui parlait de ca... |
| bô alors on sèche les mans ? |
| Bon les novices retounent sous Dreamweaver, les autres restent... ;) Je dispose d'un fichier XML et d'un XSL. J'aimerais que lorsque je tape une page php, celle ci effectue le brassage en php pour me fournir un fichier HTML en sortie. Pour exemple, le code asp suivant fonctionne sous IIS : <%@ LANGUAGE = JScript %> <% var sourceFile = Server.MapPath("books.xml" ); var styleFile = Server.MapPath("books.xsl" ); var source = Server.CreateObject("Microsoft.XMLDOM" ); source.async = false; source.load(sourceFile); var style = Server.CreateObject("Microsoft.XMLDOM" ); style.async = false; style.load(styleFile); source.transformNodeToObject(style, Response); %> Mais il faudrait que php possede son propre module de transformation XSLT, ou qu'il soit possible de charger un activeX (en l'occurence celui du DOM) pour faire la même chose qu'en ASP et qu'il y ait réponse a ma question... :hello: [jfdsdjhfuetppo]--Message édité par viiz--[/jfdsdjhfuetppo] |




