Annonce

Réduire
Aucune annonce.

Besoin d'aide pour api géolocalisation sur ma page php

Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Besoin d'aide pour api géolocalisation sur ma page php

    Bonjour à tous, j'aimerai savoir si quelqu'un pourrait m'aider, j'ai un problème, quand je met l'api je n'ai rien qui s'affiche normalement la géolocalisation doit s'afficher mais là il n'y a rien je ne comprends pas pourquoi, j'ai une api chez freegeoip.net, celle gratuite, je l'ai mise sur mon php et j'essaye de resolve mais rien, voici mon php :
    Code PHP:
    $ip $_SERVER['REMOTE_ADDR'];
                    }
                    
    $xml simplexml_load_file('http://freegeoip.net/xml&ip='.$ip.'&timezone=true');

                    
    $ip $xml->Ip;
                    
    $status $xml->Status;
                    
    $country $xml->CountryName;
                    
    $region $xml->RegionName;
                    
    $city $xml->City;
                    
    $latitude $xml->Latitude;
                    
    $longitude $xml->Longitude;
                    
    $timezone $xml->TimezoneName;
                    
    ?> 
    Merci de bien me dire comment l'a mettre...

  • #2
    Je ne connais pas l'appli. Mais ils ne t'ont pas fournis une notice d'intégration ?

    Et ce code la :'http://freegeoip.net/xml&ip='.$ip.'&timezone=true' Tu l'a tiré de où ?
    Il n'a pas l'air trop fonctionnel ? Non ? Le but est de créé un fichier XML ou d'afficher l'ip ?

    Ensuite si c'est un package tu n'a pas un référent, une fonction d'appel ?

    require fonction_d'appel ;
    J'ai mis require car maintenant PHP5 on lache progressivement include , mais bon après je sais pas comment celle ci évolue.
    Difficile ne connaissant l'appli ni la façon de la mettre en place.

    Bon ensuite ton url pour revenir dessus :

    Code PHP:
    $xml simplexml_load_file('http://freegeoip.net/xml?ip='.$ip.'&timezone=true'); 
    J'ai remplacer & par ?

    Voila tu me dira

    Commentaire


    • #3
      Le but est de géolocalisé une ip

      Commentaire


      • #4
        Merci j'avais compris. Est ce que tu a tester le changement fait & par ?.Car déjà l'url fonctionne beaucoup mieux ainsi. Ensuite a tu bien placer tous les paquets de l'appli.
        A tu bien surtout suivis le read me de l'appli.

        Car le soucis c'est pas tant l'erreur ou pas c'est que la avec une bride de code et une erreur , trouvé pourquoi ou comment sans voir suivis la mise en place , le système etc... suis pas madame Irma.

        L'autre fois sur le site de SMF, on est resté 1 semaine à chercher le type avais oublier de dl un fichier. Tu comprends Y a de quoi à perdre son sang froids défois.

        Sinon envoie un email au créateur de l'appli en lui exposant le soucis.

        Commentaire


        • #5
          D'accord, mais j'ai essayé avec une ip et ça a fonctionné mais après j'ai réessayé et ça n'a plus fonctionner, sûrement mon php mais je vois pas d'où vient le problème

          Commentaire


          • #6
            Je vais regarder de mon côté pour la mis en place de l'api pour vérifier du côté du code php
            Code PHP:
            $IP   $_SERVER['REMOTE_ADDR']; 
            je vois après }
            Tu l'a surement mis dans une condition ? Il manque un bout à ton code php ?

            Code PHP:
            function locateIp($ip){
               
                
            $xml simplexml_load_file("http://freegeoip.net/xml?ip=$ip&timezone=true"); // on charge l'api
             
                
            if (!$xml)
                    return 
            false// Pas de connection
             
                
            $answer = new SimpleXMLElement($xml);
             
                if (
            $answer->Status != 'OK')
                    return 
            false//statut non valide
             
                    
            $ip $answer->Ip;
                    
            $country_name $answer->CountryName;
                    
            $region_name $answer->RegionName;
                    
            $city $answer->City;
                    
            $timezone_name $answer->TimezoneName;
                    
            $latitude $answer->Latitude;
                    
            $longitude $answer->Longitude;
             
                    
            //Retourne les données sous forme de Tableaux

                
            return array('latitude' => $latitude'longitude' => $longitude'TimezoneName' => $timezone_name'city' => $city'region_name' => $region_name'country_name' => $country_name'country_code' => $country_code'ip' => $ip);

            En cherchant un peu j'ai remanié le code de départ en l'intégrant dans une fonction qui charge l'api, lui attribue les variables qui constitue la demande de fichier xml. Il ressort sous forme de tableaux une fois récupéré les info clients.
            Dernière modification par DreAmuS, 27 novembre 2014, 21h25.

            Commentaire


            • #7
              Marche pas

              Commentaire


              • #8
                Bonjour,

                Je viens de refaire le script.
                Il fonctionne, je l'ai testé !

                Code PHP:
                <?php
                    $ipclient 
                $_SERVER['REMOTE_ADDR'];
                    
                $xml simplexml_load_file("http://freegeoip.net/xml/".$ipclient);
                    
                    
                $ip $xml->IP;
                    
                $country $xml->CountryName;
                    
                $region $xml->RegionName;
                    
                $city $xml->City;
                    
                $latitude $xml->Latitude;
                    
                $longitude $xml->Longitude;
                    
                    echo 
                $ip "<br />";
                    echo 
                $country "<br />";
                    echo 
                $region "<br />";
                    echo 
                $city "<br />";
                    echo 
                $latitude "<br />";
                    echo 
                $longitude;
                ?>
                Amicalement,
                Samuel M.

                Commentaire


                • #9
                  Yes merci Samuel ok tu a rajouter echo pour afficher chaque variable et changer la façon d'affichage de l'url.

                  Je pense que le soucis venais donc de l'url et mon script doit fonctionner surement avec la tienne en tous cas merci si tu a tester je verrais à essayer le mien en changeant l'url.

                  Commentaire


                  • #10
                    Marche pas
                    C'est sûr que ça va être utile comme remarque, sachant qu'il ne peut sans doute pas tester. La seule chose qui aurait pu le mettre sur la voie sont les messages d'erreur que tu pourrais lui indiquer.

                    En plus il te pose des questions et tu ne daignes même pas répondre...

                    Je connais pas PHP, mais sur le principe, tu reçois une chaîne de caractères représentant le fichier XML en indiquant simplement l'URL.

                    Code:
                    php > $URL = 'https://freegeoip.net/xml/...';
                    php > $xml = new SimpleXMLElement($URL, NULL, TRUE);
                    php > echo $xml->getName() . "\n";
                    Response
                    Après faut jouer et lire la documentation, mais si tu ne vois toujours rien, peut-être qu'une autre API serait souhaitable ?

                    EDIT: J'avais pas vu les deux derniers messages...
                    Dernière modification par fred, 28 novembre 2014, 21h31.

                    Commentaire


                    • #11
                      Je peux vous envoyez la totalité de mon php si vous avez besoin

                      Commentaire


                      • #12
                        What ?

                        Samuel M a testé, pourquoi ça ne convient pas ? Tu n'arrives pas à l'adapter à ton code ?

                        Commentaire

                        Chargement...
                        X