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] Header, stream-context --> invalid user-agent


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Indre (Centre)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2015
    Messages : 14
    Points : 10
    Points
    10
    Par défaut [SimpleXML] Header, stream-context --> invalid user-agent
    Bonjour


    novice en PHP , j'essaye de consommer une api , DVDfr


    ayant plusieurs recherche à faire , j'essaye de faire un script


    l'api marche en 2 temps,

    je recherche par l'ean13 le film voulu
    --> réponse XML avec une balise <id> renseigné si une fiche est dispo pour le film

    deuxième requette
    pour rechercher la fiche , et là.....c'est le drame --> " INVALID_UA Votre user-agent est invalide ou non reconnu "


    pourtant par mon navigateur pas de soucis, alors je suppose qu'il y a certaines chose que je n'envoie pas.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    <?php
    $xml1="http://www.dvdfr.com/api/search.php?gencode=7321910182444"
     
    //******************************Creation du user_agent**************************************
    $http_headers = array(
        'Cookie: cookies=true; cookieLangId=fr_fr; cookieMenu=all;',
        'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1;'
    );
     
    $aContext = stream_context_create(
        array(
            'http' => array(
                'header' => implode("\r\n", $http_headers),
     
            )
        )
    );
     
     
    $cxContext = stream_context_create($aContext);
     
    $xml2 = file_get_contents($xml1,FALSE,$cContext);
    $xml2 = simplexml_load_string($xml2);
    $id=$xml2->dvd->id;         //récupération de l'id de la fiche
     
    if (!empty($id[0])) {
     
    $xml="http://www.dvdfr.com/api/dvd.php?id=".$id[0]; //url de la deuxième requette 
    $xml = file_get_contents($xml,FALSE,$cContext); 
    $xml2 = simplexml_load_string($xml);
     
    ?>

    Que manque t'il ?


    Merci

  2. #2
    Membre émérite Avatar de tsuji
    Inscrit en
    Octobre 2011
    Messages
    1 558
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 558
    Points : 2 736
    Points
    2 736
    Par défaut
    A part quelque typo possible, comme point-virgule manquant, $cContext ou $cxContext ... Ce qui est certain c'est que si vous voulez porter les infos avec la variable $cxContext, il ne faut pas faire établir $aContext avec stream_context_create(), ligne 11. Simplement ceci :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $aContext=array(
        'http' => array(
            'header' => implode("\r\n", $http_headers)
        )
    );

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Indre (Centre)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2015
    Messages : 14
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par tsuji Voir le message
    A part quelque typo possible, comme point-virgule manquant, $cContext ou $cxContext ... Ce qui est certain c'est que si vous voulez porter les infos avec la variable $cxContext, il ne faut pas faire établir $aContext avec stream_context_create(), ligne 11. Simplement ceci :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $aContext=array(
        'http' => array(
            'header' => implode("\r\n", $http_headers)
        )
    );


    Effectivement en regardant mon code ce matin, je me demande ce que j'ai foutu hier...avec du repos ça ma sauté aux yeux

    merci

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

Discussions similaires

  1. header HTTP: User-Agent, la compil
    Par Lancelot du Lac dans le forum Général Conception Web
    Réponses: 0
    Dernier message: 17/03/2008, 02h02
  2. envoyer le user-agent dans un include : possible?
    Par xtaze dans le forum Langage
    Réponses: 2
    Dernier message: 29/03/2006, 12h13
  3. [Configuration] User-Agent et fopen
    Par marcha dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 11/11/2005, 22h19
  4. [DBExpress] invalid user name/password sous XP
    Par Rudy 34 dans le forum Bases de données
    Réponses: 2
    Dernier message: 17/02/2005, 15h25
  5. [HTTP]Modifier le User-Agent
    Par Adjanakis dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 24/09/2004, 10h15

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