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 :

[SimpleXML] Parser du XML : [function.simplexml-load-file]: I/O warning


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 40
    Par défaut [SimpleXML] Parser du XML : [function.simplexml-load-file]: I/O warning
    Bonjour,

    disposant d'un accès à un serveur dédié Gentoo chez OVH je dois appeler une api allopass qui renvoie du xml et que je souhaite parser.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?  $code_gratuit = $_POST['http://payment.allopass.com/api/freecode.apu?auth=XXXXXXXX&number=1&key=XXXXXX&uid=XXXXXX&max_use=1&xml=1'] ;    {      
    echo "Code : ".$code_gratuit;      // On parse le flux XML   
    $parseur = simplexml_load_file($code_gratuit);      // On récupère le résultat   $code = $parseur->response->codes;      // On affiche le résultat   echo "Code : ".$code;  }    ?>
    Hélas php retourne cette erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Code :
    Warning: simplexml_load_file() [function.simplexml-load-file]: I/O warning : failed to load external entity "" in /home/user/www/allopass-xml.php on line 9
    Code :
    allow_url_fopen est ON .

    Si quelqu'un peut me donner une piste pour avancer je lui en serai gré.

  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 329
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 329
    Billets dans le blog
    17
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?  $code_gratuit = $_POST['http://payment.allopass.com/api/freecode.apu?auth=XXXXXXXX&number=1&key=XXXXXX&uid=XXXXXX&max_use=1&xml=1'] ;    {
    Bizarre ton POST

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $parseur = simplexml_load_file($code_gratuit);
    Débugage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo $code_gratuit ; // Est-ce bien l'URL du XML ??
    $parseur = simplexml_load_file($code_gratuit);

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 40
    Par défaut
    $code_gratuit retourne une chaine vide.


    c'est le personnel d'allopass très serviable d'ailleurs qui m'a fournit le script et qui m'assure que c'est la config de mon serveur qui est en cause.

  4. #4
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 329
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 329
    Billets dans le blog
    17
    Par défaut
    Donc normal que ça bloque.

    Et comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $code_gratuit = 'http://payment.allopass.com/api/freecode.apu?auth=XXXXXXXX&number=1&key=XXXXXX&uid=XXXXXX&max_use=1&xml=1' ;
    $parseur = simplexml_load_file($code_gratuit);
    ??

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 40
    Par défaut
    Merci de ton aide

    le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $code_gratuit ='http://payment.allopass.com/api/freecode.apu?auth=XXXXXX&number=1&key=XXXXXXX&uid=XXXX&max_use=1&xml=1';
     
     
     
    	// On parse le flux XML
    	$parseur = simplexml_load_file($code_gratuit);
     
    	// On récupère le résultat
    	$code = $parseur->response->codes;
     
    	// On affiche le résultat
    	echo "Code : ".$code;
    retourne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Warning: simplexml_load_file() [function.simplexml-load-file]: <a href="http://payment.allopass.com/api/freecode.apu?auth=XXXXXXX&number=1&key=XXXXXXX&uid=XXXXXXX&max_use=1&xml=1:6:" target="_blank">http://payment.allopass.com/api/free...use=1&xml=1:6:</a> parser error : Premature end of data in tag response line 6 in /home/user/www/php/allopass-xml.php on line 8
     
    Warning: simplexml_load_file() [function.simplexml-load-file]: <response> in /home/user/www/php/allopass-xml.php on line 8
     
    Warning: simplexml_load_file() [function.simplexml-load-file]: ^ in /home/user/www/php/allopass-xml.php on line 8
     
    Warning: simplexml_load_file() [function.simplexml-load-file]: <a href="http://payment.allopass.com/api/freecode.apu?auth=XXXXXXX&number=1&key=XXXXXXX&uid=XXXXXXX&max_use=1&xml=1:6:" target="_blank">http://payment.allopass.com/api/free...use=1&xml=1:6:</a> parser error : Premature end of data in tag response line 1 in /home/user/www/php/allopass-xml.php on line 8
     
    Warning: simplexml_load_file() [function.simplexml-load-file]: <response> in /home/user/www/php/allopass-xml.php on line 8
     
    Warning: simplexml_load_file() [function.simplexml-load-file]: ^ in /home/user/www/php/allopass-xml.php on line 8
    Code :

  6. #6
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 329
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 329
    Billets dans le blog
    17
    Par défaut
    D'ac, et que donne ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    header('Content-Type: text/plain') ;
    $code_gratuit = 'http://payment.allopass.com/api/freecode.apu?auth=XXXXXXXX&number=1&key=XXXXXX&uid=XXXXXX&max_use=1&xml=1' ;
    echo file_get_contents($code_gratuit) ;
    exit( ) ;
    ?? (à coller tout en haut d'un script, avant tout affichage)

Discussions similaires

  1. Réponses: 3
    Dernier message: 10/04/2012, 15h07
  2. [SimpleXML] Parser un XML avec SimpleXML_Load_File
    Par mathieu3392 dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 12/10/2007, 11h11
  3. [SimpleXML] Parser du XML dans mon php
    Par onet dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 14/02/2007, 10h09
  4. [SimpleXML] Bug SimpleXML load file
    Par eltados dans le forum Bibliothèques et frameworks
    Réponses: 13
    Dernier message: 26/07/2006, 13h06
  5. [SimpleXML] Parser un XML et en récupérer des valeurs
    Par mickael.be dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 15/04/2006, 15h08

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