Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > XML > XSL & XSLT
XSL & XSLT Forum d'entraide pour les extensions XSL et XSLT permettant de manipuler vos documents XML à l'aide de feuilles de style et de transformations avec PHP. Avant de poster -> tutoriels XSL et XSLT
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/01/2008, 17h51   #1
Membre régulier
 
Étudiant
Inscription : février 2007
Messages : 378
Détails du profil
Informations personnelles :
Âge : 27
Localisation : Canada

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2007
Messages : 378
Points : 90
Points : 90
Par défaut [XSLT] Code php pour charger un XSLT

Bonjour,

J'ail le code php suivant pour charger un php :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
?php
$dom = new DomDocument;
$dom->load("Etudiants.xsl");
$proc= new XSLTProcessor;
$proc->importStyleSheet($dom);
 
 
$dom= new DomDocument;
$dom->preserveWhiteSpace = FALSE;
$dom->formatOutput = TRUE;
$dom->load("personnes.xml");
 
echo $proc->transformToXML($dom); 
?>
Le problème c'est que le serveur que j'ai est un serveur qui roule sur php 4.4.6, et avec le code ci-dessus j'obtient les deux erreurs suivantes :



Warning: domdocument() expects at least 1 parameter, 0 given in .....index.php on line 64


Fatal error: Call to undefined method: domdocument->load() in ....index.php on line 65

la ligne 65 étant : $dom->load("Etudiants.xsl");

donc j'ai l'impression que la fonction load n'est reconnu que sur le php5, donc comment faire pour charger un fichier XSLT en php4.4 ?


merci



...
Mo_Poly est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2008, 18h56   #2
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Ça ne fonctionnera pas : l'extension DOM et XSL ont été introduites à la version 5 et ne sont pas, de facto, utilisables sur une version 4. Soit vous mettez à jour votre environnement (vivement recommandé), soit vous vous tournez vers leur "équivalent" respectif à savoir les extensions DOMXML et XSLT (mais ça va être totalement différent ).
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2008, 22h27   #3
Membre régulier
 
Étudiant
Inscription : février 2007
Messages : 378
Détails du profil
Informations personnelles :
Âge : 27
Localisation : Canada

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : février 2007
Messages : 378
Points : 90
Points : 90
Citation:
Envoyé par julp Voir le message
Ça ne fonctionnera pas : l'extension DOM et XSL ont été introduites à la version 5 et ne sont pas, de facto, utilisables sur une version 4. Soit vous mettez à jour votre environnement (vivement recommandé), soit vous vous tournez vers leur "équivalent" respectif à savoir les extensions DOMXML et XSLT (mais ça va être totalement différent ).
la premiere option est impossible (c'est pas notre serveur, et ils veulent pas changer !)

donc je dois opter pour l'option 2.

Moi j'ai un xslt qui est independant, le code php montré en haut ne fais que charger ce xslt, je dois quand meme changer mon fichier xslt ?



...
Mo_Poly est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2008, 23h06   #4
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Non, il n'y a rien à changer mis à part le code PHP utilisé, voyez cet exemple : XML/XSL avec PHP et le mode XSLT.

Par contre, les deux extensions ne sont plus aussi (même pas du tout) liées comme le sont aujourd'hui dom et xsl et il ne faudra plus compter sur l'usage des fonctions PHP dans votre document xsl
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h04.


 
 
 
 
Partenaires

Hébergement Web