Re: Re: aus API-XML-Ergebnis Werte parsen - geht das ? - baseportal Forum - Web-Anwendungen einfach, schnell, leistungsfähig!
baseportal
English - Deutsch "Es gibt keine dummen Fragen - jeder hat einmal angefangen"

 baseportal-ForumDie aktuellsten 10, 30, 50, 100 Einträge anzeigen.  

 
 Ausgewählter Eintrag: Zur Liste 
    Beitrag von Sander (8133 Beiträge) am Mittwoch, 9.Oktober.2013, 15:31.
    Re: Re: aus API-XML-Ergebnis Werte parsen - geht das ?

      ich würde es auch über json machen, ist einfacher zu handlen. Problem ist nur das decode, was du über php erledigen musst:


      $url = "https://maps.googleapis.com/maps/api/geocode/json?sensor=false&address=".$address;
      $json=get($url);
      

      $hash_string=php('
       return serialize(json_decode("'.$json.'",1));
      
      ');

      $hash_ref=unserial($hash_string);
      

      foreach(keys %$hash_ref){
       $arr_ref=$$hash_ref{$_};
       %data=%$arr_ref;
       out "$_ => ".dump(%data);
      }
      

      habs jetzt nicht probiert, aber so sollte es klappen


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Thomas (441 Beiträge) am Dienstag, 8.Oktober.2013, 22:31.
    aus API-XML-Ergebnis Werte parsen - geht das ?

      Hallo Profis.

      Muss die Google Geocodierung von v2 auf v3 upgraden. Folgenden php-Code wollte ich umändern.

      Geht das oder habt Ihr Hinweise für mich ?

      P.S.: Die Ersetzung der MySQL Befehle in Baseportal Syntax ist mir klar und funktioniert bereits.

       //API abfragen
              $xml = simplexml_load_file($request_url) or die("url not loading");
              //Statuscode und Auswertung
              $status = $xml->Response->Status->code;
              if (strcmp($status, "200") == 0) {
                  // Erfolgreich codiert!
                  $geocode_pending = false;
                  $coordinates = $xml->Response->Placemark->Point->coordinates;
                  $coordinatesSplit = split(",", $coordinates);
                  // Format: Longitude, Latitude, Altitude
                  $lat = $coordinatesSplit[1];
                  $lng = $coordinatesSplit[0];
                  //Daten in die Tabelle schreiben
                  mysql_query("Update ADRESS Set GEO_LAT = '$lat', GEO_LNG= '$lng' Where ID ='$d[ID]'");
              } else if (strcmp($status, "620") == 0) {
                  // Abfrage erfolgte zu schnell hintereinander
                  $delay += 100000;
              } else {
                  // Fehler beim Codieren
                  $geocode_pending = false;
                  echo "Address " . $address . " failed to geocoded. ";
                  echo "Received status " . $status . "\n";
              }
      

     Antworten

    Beitrag von Claus (4645 Beiträge) am Mittwoch, 9.Oktober.2013, 12:11. WWW: hammoniaweb.com
    Re: aus API-XML-Ergebnis Werte parsen - geht das ?

     Antworten

    Beitrag von Sander (8133 Beiträge) am Mittwoch, 9.Oktober.2013, 15:31.
    Re: Re: aus API-XML-Ergebnis Werte parsen - geht das ?

      ich würde es auch über json machen, ist einfacher zu handlen. Problem ist nur das decode, was du über php erledigen musst:


      $url = "https://maps.googleapis.com/maps/api/geocode/json?sensor=false&address=".$address;
      $json=get($url);
      

      $hash_string=php('
       return serialize(json_decode("'.$json.'",1));
      
      ');

      $hash_ref=unserial($hash_string);
      

      foreach(keys %$hash_ref){
       $arr_ref=$$hash_ref{$_};
       %data=%$arr_ref;
       out "$_ => ".dump(%data);
      }
      

      habs jetzt nicht probiert, aber so sollte es klappen

     Antworten


     
 Liste der Einträge von 3000 bis 3150:Einklappen Zur Eingabe 
Neueste Einträge << 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | Neuere Einträge < Zur Eingabe  > Ältere Einträge | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 >> Älteste Einträge


Zurück zur Homepage

© baseportal.de. Alle Rechte vorbehalten. Nutzungsbedingungen



powered in 0.32s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!