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

  FORUM HardWare.fr
  Programmation
  XML/XSL

  [DOM/XML/PHP] & dans texte = erreur de parsing

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[DOM/XML/PHP] & dans texte = erreur de parsing

n°1003918
Lunatik3
Serial nounours
Posté le 07-03-2005 à 19:22:42  profilanswer
 

Bonjour.
 
voila j'ai un petite probleme et j'ai un peu du mal a le cerner
 
j'utilise ce petit bout de code pour importer du texte contenant des balise dans mon document XML.  

Code :
  1. private function ajouterNoeuds($parent,$nom,$valeur){
  2.   $dom = new DOMDocument('1.0', 'iso-8859-1');
  3.   $dom->loadXML("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?><$nom>$valeur</$nom>" );
  4.   $items = $dom->getElementsByTagName($nom);
  5.   $dom = $this->importNode($items->item(0),true);
  6.   return $parent->appendChild($dom);
  7.  }


 
cela marche plutot bien sauf (pour le moment dans un cas): il suffi qu'il traine un tout petit "&" dans le texte pour que l'import foire lamentablement.  
 
et des & il y en a pas mal dans les URLs. donc ça me gene un peu.
 
Est ce que quelqu'un sait pourquoi le & fore lamentablement mon parsing.
 
exemple si j'ai:

Code :
  1. http://www.deepnight.net/core.php? [...] rticle=133


 
et ba ça plante.
 
 
merci d'avance

mood
Publicité
Posté le 07-03-2005 à 19:22:42  profilanswer
 

n°1003976
FlorentG
Unité de Masse
Posté le 07-03-2005 à 19:59:05  profilanswer
 

Oui, il ne faut jamais mettre de '&' tous seuls dans une URL. Ceci parce que les url sont des sections PCDATA. Donc ton browser (ou un parseur XML) va trouver un &, puis chercher jusqu'à trouver un point-virgule pour déterminer une entité. Et il ne va jamais trouver ce point-virgule, parce qu'il y en a pas.
 
En termes plus simples, comme tu doit le savoir, y'a des trucs genre &eacute;, &eagrave;... Ce qu'on appelle des entités. Et le parseur, quand il voit un &, il s'attend à trouver une entité... Qu'il ne trouve pas.  
 
Donc il faut remplacer tous les & par des &amp; :

http://www.deepnight.net/core.php?idSection=16&amp;idArticle=133

n°1004021
Lunatik3
Serial nounours
Posté le 07-03-2005 à 20:38:32  profilanswer
 

merci beaucoup.  
tu m'evites une recherche longue et laborieuse.


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

  [DOM/XML/PHP] & dans texte = erreur de parsing

 

Sujets relatifs
Erreur odbc -> accessQuestion PHP - mysql
[RESOLU]PHP-LDAP fonction ldap-renameCouleur avec texte defilant
PHP : garder les couleurs à l'exportautre problèmes: la récupération de variables dans script PHP
inserer du texte avec des balises html dans un document xml[PHP] recupérer le contenu d'une page dans une session
Petit script utilisant DOMQue veux dire cette erreur ?
Plus de sujets relatifs à : [DOM/XML/PHP] & dans texte = erreur de parsing


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