[XML & PHP] Hébérgeur spéciaux?

deadlife77 -  
avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonsoir,

Voici mon problème, je débute un peu dans le php (enfin, je patauge encore on va dire) et dans le XML, et je voulais récupérer les attributs d'une node (je crois que c'est comme ça qu'on appelle ça ^^') avec simplexml_load_file().

J'ai réussi assez facilement avec wampserver en local, et là, dés que j'ai uploadé mon fichier php sur mon ftp (0fees.net), et bien il ne marchait plus : une page toute blanche. Et j'ai beau relire et relire le code, je ne vois vraiment pas d'erreur...

Donc je commence à me demander si certains hébergeurs pouvaient "refuser" simplexml_load_file() ??

Voilà merci d'avance!

PS : si vous voulez je vous montre le code, mais je sais pas si c'est nécessaire par rapport à ma question. :)

19 réponses

  1. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Salut.

    Pour utiliser libxml (extension qui contient les fonctions SimpleXML), le serveur doit utiliser PHP en version 5.

    Certains hébergeurs se mettent par défaut en PHP4, mais on peut passer en PHP5 via un .htaccess ou via le panel.
    0
  2. Twinpics
     
    Bonsoir,
    Compare le fichier php.ini que tu as en local avec celui de ton hébergeur, je pense que tu trouveras facilement réponse à ton interrogation car SimpleXML est un module :-)
    -------------------------------------------------------------------------------------------------------------------------------------------------
    <* Suivez-moi sur FesseS-BouC *>
    0
  3. deadlife77
     
    Ah ouiii c'est vrai quelle nouille --'

    Bah merci Twinpics et Avion-f16 :)

    Mais comment modifier la version de PHP?
    0
  4. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    « Mais comment modifier la version de PHP? »
    Regarde dans la FAQ de ton hébergeur.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. deadlife77
     
    Hmmm... à vrai dire je ne la trouve pas et mon hébergeur étant en anglais, tant bien même je la trouverai, je suis pas sur que je comprendrai tout :/
    0
  7. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Quel est son nom ?
    0
  8. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Apparemment il n'offre que du PHP5.
    Si tu commentes toutes les lignes utilisant les fonctions SimpleXML, est-ce tu retrouves de nouveau ta page ?
    0
  9. deadlife77
     
    euh... je suis pas sur d'avoir tout compris ^^'

    Sinon, voici mon code, si ça peut m'aider à comprendre ce que je dois faire :)

    (le fichier XML est généré par un autre site, ce n'est pas moi qui l'ai fait)
    <?php
    
    $xml = simplexml_load_file('file.xml'');
    foreach($xml->data->attributes() as $att => $value) 
    {
    if($att == 'city'){echo 'Ville : '.$value.'';}
    if($att == 'door'){if ($value == 1){echo '<img src="http://www.hordes.fr/gfx/forum/smiley/h_door.gif"/>Les portes sont ouvertes!<br>';} if($value == 0) {echo '<img src="http://www.hordes.fr/gfx/forum/smiley/h_door.gif"/>Les portes sont fermées<br>';}}
    if($att == 'water'){echo '<img src="http://www.hordes.fr/gfx/forum/smiley/h_well.gif"/>il y a '.$value.' rations d\'eau en banque<br>';}
    if($att == 'hard'){if ($value == 1){echo '<img src="http://data.hordes.fr/gfx/icons/small_arma.gif"/>La ville est en pendemonium!<br>';}}
    if($att == 'x'){echo '<img src="http://data.hordes.fr/gfx/icons/item_map.gif"/>La ville est en ['.$value.';';}
    if($att == 'y'){echo ''.$value.'].';}
    }
    ?>


    (désolé comme dit dans le premier post je patauge un peu)
    0
  10. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Ça comme déjà mal :
    $xml = simplexml_load_file('file.xml'');
    Avant la fermeture de la parenthèse, les deux apostrophes posent problème : il n'en faut qu'un.

    Si aucune erreur s'est affichée à cause de cette erreur de syntaxe, vérifie que l'option display_errors soit activée.
    <?php
    echo ini_get('display_errors') ? 'Ok' : 'Pas Ok';

    Si l'option est désactivée, ajoute ceci dans tes scripts, au début :
    ini_set('display_errors', 1);


    if($att == 'city'){echo 'Ville : '.$value.'';}
    Ici, « .'' » est inutile.
    0
  11. deadlife77
     
    oh pour le premier truc du '' en fait c'est quand j'ai copié collé le code j'ai changé le nom du fichier xml, sinon dans le code original il n'y a pas ça désolé de l'erreur.

    Par contre je ne savais pas pour le '.$value.''

    mais comment faire pour "passer à php5" avec l'hébergeur?
    0
  12. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Je pense que par défaut tu es déjà en PHP5.
    Utilise la fonction phpversion() pour le savoir.
    0
  13. deadlife77
     
    c'est la version 5.2.12. Donc je comprends pas pourquoi ça veut pas lire le simplexml_load_file(), pourtant, j'ai essayé de faire phpinfo(), pour simpleXML, ils me disent que "schema support = enabled"...

    Là je suis complètement pommé :(
    0
  14. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Contacte-les ou bien essaye avec DOM, c'est aussi simple.
    0
  15. deadlife77
     
    erk je galère là o.o

    je vais sur php.net, j'utilise la fonction domxml_open_file() comme c'est écrit et en local ça me dit que la fonction n'existe pas....

    désolé d'être aussi dur à la compréhension... ^^'
    0
  16. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Remplace $xml = simplexml_load_file('file.xml');
    Par $xml = new SimpleXMLElement('file.xml', null, true);
    0
  17. deadlife77
     
    ça marche en local mais ça marche toujours pas sur le site :( Toujours cette même page blanche...
    0
  18. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Essaye avec DOM.
    0