IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[DOM] Domdocument load html, ajouter éléments valides html (xmlns ?)


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 66
    Par défaut [DOM] Domdocument load html, ajouter éléments valides html (xmlns ?)
    Bonjour,

    J'ai besoin d'utiliser loadHtml de la classe Domdocument ( afin de bénéficier de la tolérance syntaxique de cette méthode), mais mon document html devra pouvoir comporter des tags personnalisés.

    Par exemple :

    "<montag attr="valeur" />"

    J'ai créé une dtd "test.dtd" dans laquelle je défini "montag" et j'essaye de déclarer l'espace de nom 'xmlns:myns="test.dtd"', puis dans le document :

    <montag attr="valeur"/>

    Ma Dtd est valide et "montag" aussi.

    J'obtient l'erreur suivante lors du parsing PHP :

    <b>Warning</b>: DOMDocument::loadHTML() [<a href='function.DOMDocument-loadHTML'>function.DOMDocument-loadHTML</a>]: Namespace prefix xmlns of attribute myns is not defined in Entity, line: 2 in <b>test.php</b> on line <b>7</b>
    Est-ce que je m'y prend mal pour déclarer mon NS, ou est-ce que tout simplement un NS n'est pas la bonne solution ?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 66
    Par défaut
    Je me répond tout seul.

    Cela ne fonctionne pas avec loadHTML qui n'est apparement pas vraiment considéré comme un document XML ( et donc l'espace de nom n'est pas pris en compte )

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 111
    Par défaut
    Salut Bob,

    as-tu réussi à lire, écrire dans un fichier HTML finallement ?

    Je suis étonné que peu de personnes s'intéressent à ce problème (vu que les réponses sont assez rares).

    Perso, j'ai juste réussi à charger un fichier HTML avec le loadHTML (c'est pas le nom exacte) mais j'ai un problème pour récupérer le node de ma DIV avec getElementById. Donc imposible d'ajouter des nouveaux nodes. Il faut passer par le javascript. C'est vraiment dommage mais je suis sur que c'est moi qui n'a pas la connaissance suffisante pour le faire.

  4. #4
    Invité de passage
    Inscrit en
    Mars 2008
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 1
    Par défaut
    Je me permet de répondre un an plus tard étant confronté au même problème.

    J'ai utilisé simplehtmlparser : http://simplehtmldom.sourceforge.net/

    Cela accepte le html mal formé, voir n'importe quel fichier xml, en fait, il va se débrouiller pour fermer les balises.
    Il va aussi les convertir en minuscule (cela peut poser problème) et fermer automatiquement quelques balises comme "link", "br", "input", "meta", etc... (voir code source).
    Je me permet de le signaler car je tentait de parser un fichier rss, et cela posait problème, tous les <link>...</link> se transformait en un truc du genre <link />...$gt;/link&lt; , pubDate devenait aussi pubdate

    Voilà, donc à utiliser en connaissance de cause

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DOM]boucle de remplacement d'éléments html
    Par BlindeKinder dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 03/03/2011, 23h20
  2. [DOM] Erreur suite à l'ajout d'élément HTML
    Par cuisto44000 dans le forum Général JavaScript
    Réponses: 21
    Dernier message: 16/12/2008, 00h43
  3. [DOM] DOMDocument et HTML non valide
    Par bigltnt dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 29/10/2008, 19h18
  4. [DOM] DOMDocument->createTextNode() et les balises html
    Par lOeil dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 07/03/2008, 23h48
  5. [DOM] DomDocument + balise HTML
    Par ToxiZz dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 09/04/2006, 23h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo