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

EDI, CMS, Outils, Scripts et API PHP Discussion :

file_get_contents qui n'affiche rien


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2012
    Messages : 71
    Points : 44
    Points
    44
    Par défaut file_get_contents qui n'affiche rien
    Bonjour à tous, voilà je cherche à récupérer le contenu d'une page avec file_get_contents, mon code est très simple mais ne m'affiche rien, ni même une erreur. J'ai chercher énormément sur le web, tester plusieurs solutions rien ne change...
    Petite précision mon site est sur wordpress avec le themes avada, et mon code ce trouve dans le fichier function.php je fais appel à ce code par un shortcode. Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function steamBackPack() { 
     
    $item_details = @file_get_contents("http://steamcommunity.com/market/priceoverview/?appid=730&market_hash_name=AWP%20|%20Asiimov%20(Well-Worn)");
    		$item_detailsD = json_decode($item_details, true);
    		print_r ($item_detailsD);
     
     
    }add_shortcode( 'steamBackPack', 'steamBackPack' );
    Si vous pouvez testez de votre côtés pour me dire si ca marche ou pas ? Merci d'avance.

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 380
    Points : 10 410
    Points
    10 410
    Par défaut
    Salut,

    Si tu enlève l'opérateur de suppression des erreurs @ devant le file_get_contents peut être tu verras une erreur.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 383
    Points
    383
    Par défaut
    Je viens de tester sur phpfiddle

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Array ( [success] => 1 [lowest_price] => $24.57 [volume] => 299 [median_price] => $24.76 )

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Même en collant l'url dans la barre d'adresse d'un navigateur, ça marche.

    Est-ce qu'il ne te manque pas un point virgule après l'accolade ici?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    }add_shortcode( 'steamBackPack', 'steamBackPack' );

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2012
    Messages : 71
    Points : 44
    Points
    44
    Par défaut
    Merci à tous pour vos réponses, alors

    ABCIWEB : J'ai tenter, mais rien ne s'affiche ce qui veut dire qu'il n'y pas d'erreur j'imagine.
    scvo.0ne : Voilà c'est exactement cela que je devrais avoir...
    Tsilefy : Oui même moi dans l'adresse de mon navigateur ca fonctionne...pour le ; je crois que c'est bon j'ai quand même essayer d'en rajouter mais rien ne change...

    peut être un soucis avec mon serveur ? la version de php ?

    Voici la page sur la quelle j'ai insérer le shortcode : http://trustgamesbay.fr/deposit/
    J'ai même essayer sur une page.php directement : http://trustgamesbay.fr/SteamAuthent...3.1.1/demo.php

    Ca n'affiche pas...la variable semble vide.

    J'ai tester sur un autre site à moi et j'ai une erreur qui s'affiche !

    Warning: file_get_contents(http://steamcommunity.com/market/pri...0(Well-Worn)): failed to open stream: HTTP request failed! HTTP/1.0 429 Unknown in /home/pronos99/public_html/wp-content/themes/Avada-Child-Theme/functions.php on line 6

  6. #6
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 380
    Points : 10 410
    Points
    10 410
    Par défaut
    Salut,

    Sans doute tu testes sur un serveur de production et les erreurs sont désactivées. Dans ce cas si tu veux faire afficher toutes les erreurs php tu peut mettre en haut de page :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    error_reporting(E_ALL);
    ini_set('display_errors', 1);

  7. #7
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2012
    Messages : 71
    Points : 44
    Points
    44
    Par défaut
    Oui j'ai bien l'erreur :
    failed to open stream: HTTP request failed! HTTP/1.0 429 Unknown in /var/www/trustgamesbay/wp-co
    Mais je comprend toujours pas pourquoi le code fonctionne sur phpfiddle et me renvois une erreur sur mes sites : /

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 383
    Points
    383
    Par défaut
    L'erreur 429 c'est "Too Many Requests ". Ton site a fait trop de requêtes d'un coup.

    Ce que tu dois faire dans un premier temps c'est attendre (10 minutes, 1 heure, 24 heures, peut être plus, personne ne sait). Et mettre en place un système de cache pour limiter le nombre de requêtes.

  9. #9
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2012
    Messages : 71
    Points : 44
    Points
    44
    Par défaut
    Hum oui je vois plus ou moins, mais le soucis c'est que beaucoup d'utilisateurs vont déclencher plusieurs fois par jour voir par minutes / heures cette requete, avec à chaque fois une adresse différentes...donc si je suis limité par le nombre de requete je vois difficilement comment je vais pouvoir réaliser ce projet.

    La limitation est imposé par le site de steam j'imagine ?
    Je viens de check : You are limited to one hundred thousand (100,000) calls to the Steam Web API per day. Valve may approve higher daily call limits if you adhere to these API Terms of Use.
    Je pense pas avoir fait 100 000 requêtes dans la journée..

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Points : 383
    Points
    383
    Par défaut
    D'où l'intérêt de mettre en cache.

    La première fois que tu fais la requête tu enregistre le résultat en base de données avec l'heure et la date, et la seconde fois, avant de faire ton file_get_contents, tu vérifie si le résultat n'est pas dans la base de donnée et qu'il n'est pas trop vieux. S'il c'est ok, tu affiche ce que tu as en base de donnée, sinon tu retourne chez Steam recupérer des infos plus récentes.

    Ensuite 100K requêtes c'est la limite pour 24 heures. Il y a surement d'autres limites en nombre de requêtes par seconde ou par minute.

  11. #11
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2012
    Messages : 71
    Points : 44
    Points
    44
    Par défaut
    Ok je vois je vais tenter de réaliser ca et je vous retiens au courant merci !

  12. #12
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2012
    Messages : 71
    Points : 44
    Points
    44
    Par défaut
    Je reviens vous dire que j'ai résolu mon problème en utilisant un autre liens qui marche sans problème : https://opskins.com/pricelist/730.json.
    Ensuite pour ce qui était de la mise en cache, j'avais déjà fait quelque chose de similaire sur un autre problème en enregistrant les données dans la bdd grâce au cron de wordpress, mais j'ai eu des soucis sur ce projet et j'ai fini par trouvé ce lien. Merci pour votre aide, topic résolu !

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

Discussions similaires

  1. ImageList qui n'affiche rien
    Par blastou dans le forum C#
    Réponses: 5
    Dernier message: 28/08/2007, 18h16
  2. Créer un environnement qui n'affiche rien
    Par xiourf dans le forum Mise en forme
    Réponses: 5
    Dernier message: 27/05/2007, 17h59
  3. Programme qui n'affiche rien
    Par Premium dans le forum OpenGL
    Réponses: 2
    Dernier message: 03/12/2006, 21h43
  4. SplashScreen qui n'affiche rien ?
    Par Baptiste Wicht dans le forum Interfaces Graphiques en Java
    Réponses: 14
    Dernier message: 26/06/2006, 14h15
  5. [LG]Programme qui n'affiche rien
    Par ousunas dans le forum Langage
    Réponses: 4
    Dernier message: 17/02/2004, 19h38

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