Forum: PC-Programmierung Google Maps Distance API


von TestBild (Gast)


Lesenswert?

Hi Leute,
ich versuche gerade mit der Online "Google Maps Distance API" den 
Abstand zwischen zwei orten mit PHP zu berechnen. Dabei versuche ich mit 
z.B. file_get_contents den Inhalt(xml) des API Links aus zu lesen. Dafür 
verwende ich 
"https://maps.googleapis.com/maps/api/distancematrix/xml?origins=Blücherstraße 
32, 10961 Berlin&destinations=Nördlinger Straße 7 51103 
Köln&mode=walking&key=AIzaSyAIqpF1RJsajMUQ_DZNdAZWPSi7iwuFVqk" und wenn 
ich diesn link im Browser öffne kommt auch das Richtige ergebnis von 533 
km, nur wenn ich das über PHP versuche aus zu füren kommt "Warning: : 
failed to open stream: HTTP request failed! HTTP/1.0 400 Bad Request in 
__/____/___/..........."

In der Entsprechen Datei:

if($start_adresse!='' && $ziel_adresse!=''){
    $url = 
"https://maps.googleapis.com/maps/api/distancematrix/xml?origins=".urldecode($start_adresse."&destinations=".$ziel_adresse."&mode=walking&key=AIzaSyAIqpF1RJsajMUQ_DZNdAZWPSi7iwuFVqk";);
    $url = ($url);
    $html = file_get_contents($url);
    echo $url;
    if($html==FALSE) {
      echo '<br>error';
    } else {
      echo 'success<br>'.$html;
    }
}else{
 echo "No Content!";
}

Ich denke es könnte an einer Falschen Codierung des Textes liegen, nur 
weiß ich leider nicht was der richtige ist...

Wisst ihr, wie ich das Problem lösen kann?

MFG
Euer TestBild

PS: Danke schonmal im vorraus :)

: Verschoben durch User
von ich bin nicht tim taylor (Gast)


Lesenswert?

probiers besser mal mit guzzle oder curl, damit kannst du auch den 
inhalt der antwort auslesen. damit file_get_contents mit urls 
funktioniert muss die php.ini passend konfiguriert sein/werden - und das 
ist auf hostservern nicht immer der fall.

oder ruf den request mal im browser auf und schau was passiert

von TestBild (Gast)


Lesenswert?

Im Browser funtioniert alles Perfekt! (Also der Link)

von ich bin nicht tim taylor (Gast)


Lesenswert?

1
user@skynet:~$ curl https://maps.googleapis.com/maps/api/distancematrix/xml?origins=Bl%C3%BCcherstra%C3%9Fe
2
<?xml version="1.0" encoding="UTF-8"?>
3
<DistanceMatrixResponse>
4
 <status>INVALID_REQUEST</status>
5
</DistanceMatrixResponse>
6
user@skynet:~$

nope, irgendwas passt da nicht.
ich tippe mal darauf, dass da ein parameter fehlt. mit nur einem 
koordinaten-punkt kann ich keine entfernungen berechnen

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.