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

Langage PHP Discussion :

file_get_content pose problème sur Explorer 9


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Référenceur
    Inscrit en
    Août 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Référenceur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2011
    Messages : 5
    Points : 5
    Points
    5
    Par défaut file_get_content pose problème sur Explorer 9
    Bonjour à tous,

    Je rencontre un problème intéressant avec Explorer 9. Je n'ai pas vraiment trouvé de meilleur emplacement pour ouvrir ce sujet sur le forum.

    Mon problème se pose sur un site qui fait de multiples appels de contenus externes avec la fonction file_get_content:
    http://www.hotels-ghana.fr
    Ces appels externes fonctionnent bien avec le contenu HTML ou text/css. En revanche, les appels d'images posent problème sur Explorer 9 uniquement (à ma connaissance).
    Chez moi, Explorer 9 ne parvient pas à charger les différentes images, tandis que les autres navigateurs y parviennent (Explorer 8 et Firefox).

    Pouvez-vous me confirmer que vous avez le même problème que moi lorsque vous accéder au site avec IE9 (image absentes) ?

    Je ne comprends pas exactement l'origine du problème, mais pensez-vous qu'il serait possible de résoudre la question au niveau du code PHP:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $ext = pathinfo($_GET["image"], PATHINFO_EXTENSION);
    header("Content-type: image/".$ext);
    echo (file_get_contents("http://www.site-source.com/images/".$_GET["image"]));
    ?>

  2. #2
    Invité
    Invité(e)
    Par défaut


    Les problèmes spécifiques à un navigateur n'ont jamais rien à voir avec des fonctions PHP (qui ne s'exécute que sur le serveur). La fonction file_get_contents n'a donc rien à voir avec ton problème.

    Par contre, ce que le navigateur reçoit, c'est le header que tu lui envoies. Essaie de varier (genre avec les image/pjpeg au lieu de image/jpeg et image/x-png au lieu de image/png), car il me semble qu'IE9 a des spécificités dans son interprétation des types MIME.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Référenceur
    Inscrit en
    Août 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Référenceur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2011
    Messages : 5
    Points : 5
    Points
    5
    Par défaut Pas si sûr
    Merci de ta participation, je pensais également que le type MIME était la première piste à envisager mais les changements de types ne donnent rien.

    En revanche, je ne suis pas aussi affirmatif que toi sur la fonction file_get_content car il pourrait s'agir d'un problème d'encodage mal supporté par IE9.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Alors il peut y avoir un truc lié à file_get_contents. Affiche ton contenu avec un type MIME text/plain et dis-nous ce qui s'affiche. Parfois file_get_contents récupère les headers HTTP du document source et il se peut qu'IE9 croie que c'est du contenu alors que les autres navigateurs comprennent que c'est du header.

    Auquel cas je ne pourrai que te conseiller de te tourner vers cURL pour récupérer ton contenu distant

  5. #5
    Expert confirmé
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Points : 4 853
    Points
    4 853
    Par défaut
    Pour en avoir le coeur net tester avec un outil genre telnet afin de voir la reponse HTTP dans son intégralité.

    Sinon regardes du côté stream_context_create avant de faire appel à file_get_contents.

  6. #6
    Membre habitué
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2008
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Décembre 2008
    Messages : 106
    Points : 152
    Points
    152
    Par défaut
    et utilise getimagesize pour récupérer le type mime

Discussions similaires

  1. [AC-2002] Module trouvé sur FAQ me pose problème.
    Par Geache dans le forum VBA Access
    Réponses: 0
    Dernier message: 07/12/2009, 15h50
  2. Réponses: 18
    Dernier message: 12/04/2007, 12h46
  3. Problème sur GetPrivateProfileString ???
    Par Bordelique dans le forum Langage
    Réponses: 7
    Dernier message: 25/06/2003, 22h15
  4. Problème sur une requête INSERT
    Par Marion dans le forum Langage SQL
    Réponses: 3
    Dernier message: 17/06/2003, 08h45
  5. problème sur une requête!!!!!
    Par Mcgrady_01 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 13/06/2003, 01h17

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