PHP - problème URL
Répondre à la discussion
Affichage des résultats 1 à 8 sur 8

PHP - problème URL



  1. #1
    inviteb28c79ed

    PHP - problème URL


    ------

    Bonjour,
    Dans le cadre d’un projet de fin d’étude je dois créer un système capable de récupérer des prévissions météorologiques en fonction d’un lieu (une adresse par exemple).

    J’ai trouvé deux API après quelque recherche, une qui offre des informations météo en fonction des coordonnées (longitude/latitude) et une qui transforme une adresse en coordonnées ! Génial !

    Mais le problème est que les deux utilisent le PHP et je débute en php (j’ai téléchargé WampServer ce matin même..). Le code en lui-même ne me pose aucun problème j’avais de bonne bases dans d’autre langage.
    La ou je bloque c’est tout ce qui touche au réseau (Les URL, les serveurs, etc..).


    J’ai un bout de code qui utilise l’API de géocodage de Yahoo mais je n’arrive pas à l’utiliser. Quand je le lance j’obtiens l’erreur suivante :
    « Warning: simplexml_load_file(http://api.local.yahoo.com/MapsServi...40,BARR,France) [function.simplexml-load-file]: failed to open stream: Une tentative de connexion a échoué car le parti connecté n'a pas répondu convenablement au-delà d'une certaine durée ou une connexion établie a échoué car l'hôte de connexion n'a pas répondu. in C:\wamp\www\test\test_geo.php on line 15

    Warning: simplexml_load_file() [function.simplexml-load-file]: I/O warning : failed to load external entity "http://api.local.yahoo.com/MapsService/V1/geocode?appid=demo&location=67 140,BARR,France" in C:\wamp\www\test\test_geo.php on line 15

    Fatal error: Maximum execution time of 60 seconds exceeded in C:\wamp\www\test\test_geo.php on line 15
    »

    Voici le code que j’utilise (je l’ai trouvé en cherchant sur le net, il n’est pas de moi) :

    /* ****************************** *********** */
    12. <?php
    13.
    14. $request_url = "http://api.local.yahoo.com/MapsService/V1/geocode?appid=demo&location=67 140,BARR,France";
    15. $xml = simplexml_load_file ($request_url) or die ("Probleme lors du cahrgement de l'URL");
    16.
    17. // echo "<pre>"; var_dump ($xml); echo "</ pre>"; // vérification de simple_load_file();
    18.
    19. $latitude = $xml-> Résultat-> Latitude;
    20. $longitude = $xml-> Résultat-> Longitude;
    21. ?>
    /* ****************************** ************ */

    Est-il possible qu’un quelconque proxy m’empêche d’accéder a cette URL ? (Je le sens venir le problème lié au proxy x’D) ?
    Est-ce que c’est autre chose ? J’ai fais plusieurs recherche et j’ai utilisé plusieurs fonction différentes pour atteindre l’URL (comme cURL) mais l’erreur généré est la même.


    Si quelqu’un a la solution je suis preneur ! Merci d’avance.

    -----

  2. #2
    inviteb28c79ed

    Re : PHP - problème URL

    Up !

    Bonjour tout le monde, hier j’ai effectué pas mal de recherche sur mon problème et pour commencer j’ai réalisé que l’API de Yahoo! avait quelque problème en ce moment (ne retourne aucune valeur)..
    Du coup j’ai réécris le même code pour un API de google (Géocoding).
    Mais l’erreur généré est toujours la même.

    Pour plus d’information je travail avec Wampserveur, Php5.3, Apache2.2.11.
    J’ai déjà fais un tour dans le fichier php.ini pour essayer de modifier les valeurs limites qu’il était conseillé de modifier (recherche google)
     set_time_limit + max_execution_time + max_input_time + memory_limit

    Mais sans succès … (je les ai remis a leurs valeurs initiales)

    J’ai fais deux trois tests a coup de isset pour voir si l’URL que je demandais existais bien mais bon .. le code plante toujours sur le simplexml_load_file($url_reque st);

    Ps : Si vous voulez tester l’API voici l’URL que je tente d’envoyer. http://maps.googleapis.com/maps/api/...E&sensor=false. Et quand je le fais manuellement ça fonctionne !


    Le nouveau code : (Très pratique de pouvoir utiliser la balise [PHP].. Je ne l'avais pas vue dans mon premier post, pardon.)

    Code PHP:
    <?php
            
    //phpinfo ();

            
    $adresse ="67140+BARR+FRANCE"// Adresse a Géocoder

            // concaténation de l'adresse avec l'URL
            
    $url_base="http://maps.googleapis.com/maps/api/geocode/xml?";
            
    $url_request $url_base."address=".urlencode($adresse).'&sensor=false';
            echo 
    $url_request."<br />";

            echo 
    "Est-ce que l'URL existe ?<br />";
            if(isset(
    $url_request) == 1// Test pour vérifier si l'URL existe
                
    {
                echo 
    "l'URL existe, j'envois la requete !<br />";

                
    //Chargement de la page puis vérification
                
    $xml simplexml_load_file($url_request) or die ("Probleme lors du cahrgement de l'URL");
                echo 
    "<pre>"var_dump ($xml); echo "</ pre>";

                
    $status $xml -> status// Reception de l'état des information
                
                
    if($status=='OK'// Si les info sont bonnes ont les récupère toutes
                    
    {
                    
    $adresse_verif  $xml-> results-> Formatted_address;
                    
    $longitude $xml-> results -> geometry -> location -> lng;
                    
    $latitude $xml -> results -> geometry -> location -> lat;
                    }
                }
            else 
    // Si l'URL n'existe pas, on en cherche une valide ...
                
    {
                echo 
    "l'URL n'existe pas... Recommence!<br />";
                }
            
    ?>

  3. #3
    defender19

    Re : PHP - problème URL

    Salut!

    Je viens de tester ton bout de code (celui du dernier message) et je n'ai sensiblement pas la même erreur.
    Ce serait plutôt une erreur du code en lui même, donc à corriger.
    Je n'ai pas le temps tout de suite, je peux essayer de regarder ce soir.

    En attendant, voila ce que cela m'affiche :

     Cliquez pour afficher


    C'est donc ces deux lignes qui sont à corriger :

    Code PHP:
     $longitude $xml-> results -> geometry -> location -> lng;
                    
    $latitude $xml -> results -> geometry -> location -> lat

  4. #4
    inviteb28c79ed

    Re : PHP - problème URL

    Salut, déjà pour commencer merci d'avoir répondu a mon post ! Puis excuse moi de ne pas avoir répondu plus tôt mais ce fut un long week-end !

    Quand je vois que tu arrives a récupérer les données qui m’intéresses, ça veut dire que ce que je cherche a faire est possible et j'en suis content. Je me remet au boulot de suite pour arriver (Au moins) au même résultat que toi !

    Cordialement Sloth.

    (Edition du post a venir quand j'aurais un résultat !)

  5. A voir en vidéo sur Futura
  6. #5
    inviteb28c79ed

    Re : PHP - problème URL

    * Edit : En fait, j'ai toujours ce problème de "Fatal error: Maximum execution time of 60 seconds exceeded in : " (pour le simplexml_load_file). Et je pense que c'est mon premier problème a résoudre.. Je ne comprends pas pourquoi tu n'as pas la même erreur que moi. Peut être car je bosse dans une entreprise et comme je l'avais souligné plus haut un proxy pourrait me causer des problèmes ?
    --> Je vais essayer de voir l'informaticien de la boite pour lui demander si ça a un rapport, et si oui comment contourner le problème.

    (Il est impossible de véritablement éditer ses messages, donc je fais du double post, pardon)

  7. #6
    inviteb28c79ed

    Re : PHP - problème URL

    * Edit 2 : J'ai trouvé l'erreur qui peut corrigé le code. J'ai tapé "results" a la place de "result" (le 's' est de trop). Comme quoi les erreurs sont toujours plus ou moins stupide.

    Sinon je crois avoir raison a propos du proxy. J'ai refais quelques test avec cURL et j'obtient un message d'erreur qui bloque la page que je veux.
    Avec comme message d'erreur :
    "Error Code: 407 Proxy Authentication Required. The ISA Server requires authorization to fulfill the request. Access to the Web Proxy filter is denied."
    Ce n'est pas une erreur lié au code PHP mais a une restriction internet. Plus d'info a venir quand j'aurais mis la main sur un informaticien de la boite!

  8. #7
    inviteb28c79ed

    Re : PHP - problème URL

    Bon bon bon, le problème est résolut ! J’ai utilisé les fonction de cURL pour me connecter au proxy et récupérer les informations dont j’avais besoin. (Merci google d'avoir partagé ton savoir avec moi ! )

    Code PHP:
    $url $url_request;

    $proxy_host host:port';
    $proxy_ident = username:password' 
    ;

    $ch curl_init($url_request);
    curl_setopt($ch,CURLOPT_PROXYTYPE ,'URLPROXY_HTTP');
    curl_setopt($chCURLOPT_RETURNTRANSFERTRUE);
    curl_setopt($chCURLOPT_PROXY$proxy_host);
    curl_setopt($ch,CURLOPT_PROXYAUTH,'URLAUTH_ANY');
    curl_setopt($ch,CURLOPT_PROXYUSERPWD$proxy_ident);


    $data curl_exec($ch);
    echo 
    "Page content : <br />";
    echo 
    $data
    echo 
    "<br />"
    Merci aux modérateurs de clôturer la discutions.

    Cordialement,
    Sloth

  9. #8
    defender19

    Re : PHP - problème URL

    Je viens aussi de tester avec result, ça marche parfaitement!

    Par curiosité, tu utilises quoi comme api pour avoir la météo en fonction des coordonnées ?

    merci

Discussions similaires

  1. defaut transmission avec url php html
    Par invitec7fd8fb0 dans le forum Programmation et langages, Algorithmique
    Réponses: 1
    Dernier message: 14/11/2011, 14h43
  2. [MSWORD] problème d'exécution de macro d'un doucment via IE et une url FILE://
    Par invite2558d5f3 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 31/03/2008, 12h01
  3. probleme url sous javascript
    Par bird12358 dans le forum Logiciel - Software - Open Source
    Réponses: 3
    Dernier message: 14/12/2007, 13h52
  4. Problème avec certaines url dans les balises [url]
    Par shokin dans le forum Internet - Réseau - Sécurité générale
    Réponses: 2
    Dernier message: 11/05/2007, 09h46
  5. problème de php !!!
    Par nams2590 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 3
    Dernier message: 20/01/2007, 20h41