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

Modules Perl Discussion :

XML::Simple et encoding.


Sujet :

Modules Perl

  1. #1
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 101
    Par défaut XML::Simple et encoding.
    Bonsoir,

    J'utilise XML::Simple pour parser du xml.
    En local je teste avec un fichier qui contient mon xml.
    et je fais $xml = XMLin($fichier);

    et je peux le parser sans probleme (il y a des accents, des caractères spéciaux etc)


    Maintenant je recuperer le meme xml mais par internet. Une base de donné mysql contient toutes les informations et un fichier php est chargé de renvoyer les xml sur une page que je récuperer avec une socket.

    Cette fois si Xml::Simple n'arrive pas a le parser =:


    not well-formed (invalid token) at line 2, column 39, byte 61 at /usr/lib/perl5/XML/Parser.pm line 187
    at /usr/lib/perl5/XML/Parser.pm line 192
    XML:arser::parse('XML:arser=HASH(0x8493e34)', '<?xml version="1.0"?>\x{a}<eleve nom="machin" prenom="Rapha...') called at /usr/local/share/perl/5.8.8/XML/Simple.pm line 343
    XML::Simple::build_tree_xml_parser('XML::Simple=HASH(0x8493db0)', 'undef', 'SCALAR(0x82cfc88)') called at /usr/local/share/perl/5.8.8/XML/Simple.pm line 282
    XML::Simple::build_tree('XML::Simple=HASH(0x8493db0)', 'undef', 'SCALAR(0x82cfc88)') called at /usr/local/share/perl/5.8.8/XML/Simple.pm line 223
    XML::Simple::XMLin('<?xml version="1.0"?>\x{a}<eleve nom="machin" prenom="Rapha...') called at osp.pl line 60
    Et le xml était :


    <eleve nom="machin" prenom="Raphaël" classe="Seconde L" adresse="Léon Bourgain" code_postal="3423" ville="machin" pays="France" telephone="3421434">
    <matiere>
    Notez bien le Raphaël et le Léon Bourgain, c'est à cause de ces caractères "spéciaux" que le script plante, pourquoi ? que faut-il faire ?

    Merci pour votre aide

  2. #2
    Membre éclairé Avatar de mobscene
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    331
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 331
    Par défaut
    Je dirais envoyer ton xml via soap ou xml-rpc comme tu passe par le net sinon utiliser les fontions php pour tranformé les caractères spéciaux en entités html

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 101
    Par défaut
    Le probleme c'est que les entités html contient aussi des caractères spéciaux : ;
    J'ai résolu e probleme en convertissant le tout en utf-16 et puis en le faisant passé a la moulinette

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

Discussions similaires

  1. XML::Simple -> Parser 2 niveaux
    Par gpo23 dans le forum Modules
    Réponses: 4
    Dernier message: 27/05/2006, 08h57
  2. Problème XML::Simple & image::Magick
    Par rori dans le forum Modules
    Réponses: 5
    Dernier message: 17/05/2006, 17h02
  3. Problème avec XML::Simple
    Par ViRouF dans le forum Modules
    Réponses: 7
    Dernier message: 10/04/2006, 17h17
  4. problème pour parser un fichier xml avec XML::Simple
    Par black_code dans le forum Modules
    Réponses: 3
    Dernier message: 30/01/2006, 19h32
  5. Réponses: 4
    Dernier message: 07/05/2004, 21h15

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