Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > XML > SimpleXML
SimpleXML Forum d'entraide pour l'extension SimpleXML, qui permet de manipuler des documents XML en PHP (approche DOM).
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 10/04/2007, 18h44   #1
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
Par défaut [SimpleXML] lecture d'un fichier xml

Bonjour,
Je suis débutant dans la lecture de fichier XML.
J'ai un fichier XML qui a la structure suivante:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
<?xml version='1.0' encoding='UTF-8'?>
<contenu>
   <etudiant>
    <PRENOM>Jean</PRENOM>
   <NOM>denis</NOM>
   <spec>un 
texte
sur 
plusieurs lignes avec
des
caracteres comme &,',""..</spec>
</etudiant>
 
</contenu>
Je lis ensuite mon XML de la manière suivante:
Code :
1
2
3
4
5
6
     $contenu = simplexml_load_file('***/fic.xml');
     if(!empty($contenu)){
     foreach($contenu->etudiant as $etudiant) {
        echo 'Nom de l\'etudiant : ' ,utf8_decode($etudiant->NOM).'<br>';
     }
     }
Le problème , c'est que j'ai tout un tas de warning qui se déclenche, et que du coup il arriva pas a parser mon fichier XML. les warning que j'ai sont les suivants:
xml:29167: parser error : xmlParseEntityRef: no name in
parser error : Extra content at the end of the document in
etc...

Bon, je recois le fichier XML tel quel mais sans être spécialiste et après avoir ergardé les lignes ou sont déclenchés les warning, je constate que celà vient des sauts de ligne, des caractèrs spéciaux, etc...

Donc que dois-je faire pour m'affranchier de ces warnings et pour pouvoir travailler mon XML correctement?

Merci d'avance
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/04/2007, 19h47   #2
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
J'ai vraiment des tonnes d'erreur dans ce fichier xml, une ligne du genre :
Code :
1
2
3
4
 
<developpement>
<br>
Consultez nos références sur <a href="http://www.****.**">www.***.be</a></developpement>
est elle censée etre lue en XML ?
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2007, 09h24   #3
Membre chevronné
 
Avatar de haltabush
 
Développeur Web
Inscription : avril 2005
Messages : 726
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 726
Points : 790
Points : 790
Rajoute des sections CDATA pour éviter que ton code HTML soit interprété comme du xml.
__________________
HADOPI : black-out du net!
haltabush est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2007, 14h11   #4
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
Merci, peux-tu me donner un exemple avec les CDATA ?
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2007, 14h16   #5
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
EN fait j'ai regardé et celà permet d'ignorer le parsing intelligent sur les données contenues dans le CDATA. Ca irait tres bien dans mon cas, sauf que le fichier XML, je le reçois comme ceci et que ce n'est pas moi qui le crée, alors comment faire pour utliser les CDATA dans ces conditions?

Merci d'avance.
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/04/2007, 14h50   #6
Membre chevronné
 
Avatar de haltabush
 
Développeur Web
Inscription : avril 2005
Messages : 726
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2005
Messages : 726
Points : 790
Points : 790
J'ai envi de dire que tu ne peux pas...
Soit tu exige un fichier xml correctement formaté, sinon et bien tu n'a plus qu'à faire ton traitement de xml sans simplexml. C'est pas bien compliqué mais c'est une perte de temps.
__________________
HADOPI : black-out du net!
haltabush est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/04/2007, 18h03   #7
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
Merci haltabush, j'ai recontacté la société en question pour leur demander de vérifier la conformité de leur fichier xml.
Je voulais juste m'assurer, étant débutant XML, que je n'allais pas leur dire de bétises.

Merci en tout cas de m'avoir éclairé sur ce sujet.
Raideman 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 10h03.


 
 
 
 
Partenaires

Hébergement Web