Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > XML > DOMXML
DOMXML Forum d'entraide pour l'extension DOMXML permettant de manipuler des documents XML en PHP 4 (approche DOM). Avant de poster -> tutoriels DOMXML
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 22/05/2008, 11h52   #1
Membre habitué
 
Homme
Inscription : octobre 2003
Messages : 255
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : octobre 2003
Messages : 255
Points : 103
Points : 103
Par défaut [DOMXML] ouverture de fichier qui merde

Bonjour,

j'ai un code qui marche en local mais pas sur mon serveur et je trouve pas l'erreur......

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//Récuperer le catalogue xml
foreach($TlesCatas as $monCata)
{
	//Ouvrir le fichier
	$monXml = dirname(__FILE__)."/catalogues/".$monCata;
	$dom = domxml_open_file($monXml, DOMXML_LOAD_DONT_KEEP_BLANKS);
 
	$xpath = $dom->xpath_new_context();
	$noeud = $xpath->xpath_eval("//page");
	$indicePage = 1;
	foreach($noeud->nodeset as $unePage)
	{		
		$enfantTexte = $unePage->first_child();		
		if($enfantTexte->type == 1 && $enfantTexte->tagname == "stage")
		{
			$texteStage = $enfantTexte->get_content();
			list($reference, $titre) = split(" : ",$texteStage);			
			array_push($Tref, $reference);												
		}
 
		$indicePage++;
	}
 
	//Libérer le parseur XML
	$dom->free();
}
si j'utilise :
Code :
1
2
$dom = new DomDocument('1.0', 'UTF-8');//UTF-8//iso-8859-1
$dom->load("catalogues/ATCHOUM_25-4-2008.xml");
le problème est détourné sur
Citation:
$xpath = $dom->xpath_new_context();
D4rK_C0uaK6 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2008, 08h37   #2
Membre habitué
 
Homme
Inscription : octobre 2003
Messages : 255
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : octobre 2003
Messages : 255
Points : 103
Points : 103
Le problème provient de mon serveur, dans les fichiers log concernant les erreurs, il marque undefined fonction domxml_open_file()

J'ai mis les droit d'acces au dossier et fichiers php et xml : (757)

La configuration de mon serveur dédié chez Amen :
Citation:
Version de PHP : 5.2.4;

dom
DOM/XML : enabled
DOM/XML API Version : 20031129
libxml Version : 2.6.29
HTML Support : enabled
XPath Support : enabled
XPointer Support : enabled
Schema Support : enabled
RelaxNG Support : enabled

libxml
libXML support : active
libXML Version : 2.6.29
libXML streams : enabled

xml
XML Support : active
XML Namespace Support : active
libxml2 Version : 2.6.29
Je développe sous easyphp1.8 ca marche nickel.
Je précise que j'utilise la classe domxml de php4

Je viens de faire un autre test, grace à ce code qui affiche toutes les méthodes d'une extension php comme gd ou doxml, ....

Code :
1
2
3
echo "<pre>";
print_r(get_extension_funcs ("domxml")); 
echo "</pre>";
donc en local il affiche les méthodes en ligne non il ne connait donc pas cette classe... De plus, ils n'ont pas désactiver ce bout de code car avec 'gd' ca marche.
D4rK_C0uaK6 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2008, 12h11   #3
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
L'extension DOM des versions 5 a remplacé DOMXML, des versions 4. Et elles n'ont plus rien en commun !

Citation:
Envoyé par D4rK_C0uaK6
Je précise que j'utilise la classe domxml de php4
C'est à dire ?
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 10h50   #4
Membre habitué
 
Homme
Inscription : octobre 2003
Messages : 255
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : octobre 2003
Messages : 255
Points : 103
Points : 103
D'accord il n'y a pas moyen d'ajouter la classe domxml sur un serveur en php5 ?
je suis donc obliger de tout réécrire en dom ou simpleXML ?

pourtant quand je fais :
Code :
1
2
3
echo "<pre>";
print_r(get_extension_funcs("dom")); 
echo "</pre>";
il ne m'affiche pas les méthodes associées à cette classe sauf "dom_import_simplexml". Je vais donc essayer de faire une installation de package.

Dom est si différent de domxml en syntaxe ?
D4rK_C0uaK6 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 14h31   #5
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
Citation:
Envoyé par D4rK_C0uaK6
D'accord il n'y a pas moyen d'ajouter la classe domxml sur un serveur en php5 ?
Oui, c'est une extension PECL pour PHP 5 (mais je n'ai jamais essayé et semble avoir été en partie supprimée).

Citation:
Envoyé par D4rK_C0uaK6
je suis donc obliger de tout réécrire en dom ou simpleXML ?
^^ non et il doit probablement exister des classes PHP pour retrouver une "interface" similaire (par exemple : http://alexandre.alapetite.net/doc-a...xml-php4-php5/).

Citation:
Envoyé par D4rK_C0uaK6
pourtant quand je fais :
Code :
1
2
3
echo "<pre>";
print_r(get_extension_funcs("dom")); 
echo "</pre>";
il ne m'affiche pas les méthodes associées à cette classe sauf "dom_import_simplexml".
Oui : toute l'extension est orientée objet, c'est la (ou une du moins) des seules fonctions disponibles (cette fonction ne fait pas apparaître les méthodes).

Citation:
Envoyé par D4rK_C0uaK6
Dom est si différent de domxml en syntaxe ?
Ben, oui, elle a été entièrement réécrite/repensée sans aucune compatibilité ascendante, donc.
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h19.


 
 
 
 
Partenaires

Hébergement Web