Peter Nack: Google Maps - Benutzer Koordinaten/Ort selektieren und übernehme

Hallo allerseits,

ich bin mir ziemlich sicher, dass es im Netz einige Beispiele für mein Anliegen gibt, doch bin ich nicht so recht sicher, wonach ich genau suchen soll.

Also:
In einer Registrierung soll ein Benutzer einen beliebigen Ort eines bestimmten Landes angeben.
Der Ablauf schwebt mir wie folgt vor Augen:
Ich binde GoogleMaps in einem IFrame auf meiner Seite ein. Der Benutzer kann dann auf den entsprechenden Ort klickt, und Google liefert mir dann die passenden Koordinaten zurück, welche ich dann in die Datenbank übertrage.

Nun meine Frage: Ist die Vorgehensweise für meine Anliegen so korrekt?
Bzw. arbeite ich an der Stelle überhaupt mit Koordinaten? Oder generiert mir Google eine eindeutige ID?
Wie kann ich die Auswahl auf ein Land beschränken?

Im nächsten Schritt würde ich dann gerne auf einer allgemeinen Karte alle Standorte der Benutzer anzeigen lassen. Also brauche ich die im Schritt 1 generierten Daten auch später zur Weiterverarbeitung.

Wer mir ein paar hilfreiche Tips oder Links geben kann, dem sei an dieser Stelle gedankt!

MfG
Peter

  1. Servus,

    [...]
    Nun meine Frage: Ist die Vorgehensweise für meine Anliegen so korrekt?
    Bzw. arbeite ich an der Stelle überhaupt mit Koordinaten? Oder generiert mir Google eine eindeutige ID?

    Google arbeitet hier mit Längen- und Breitengrad.

    Wie kann ich die Auswahl auf ein Land beschränken?

    Hier gibt es in meinen Augen kein wirksames Mittel. Wenn der Benutzer die Karte hat, kann er machen, was er will (klickenderweise).

    [...]
    Im nächsten Schritt würde ich dann gerne auf einer allgemeinen Karte alle Standorte der Benutzer anzeigen lassen. Also brauche ich die im Schritt 1 generierten Daten auch später zur Weiterverarbeitung.

    Die sind ja eh bei Dir in der Datenbank, oder? Das sollte kein Problem sein.

    Wer mir ein paar hilfreiche Tips oder Links geben kann, dem sei an dieser Stelle gedankt!

    Also die erste Anlaufstelle ist http://code.google.com/intl/de-DE/apis/maps/
    Dort erhältst Du Informationen über die API (z.B. Javascript), mit der Du Google Maps ansprechen kannst. Du brauchst hierfür übrigens keinen iframe.
    Ich habe in einem Projekt für einen Kunden eine Google Maps Anbindung entwickelt und damals allein mit der Javascript API aus dem o.g. Link gearbeitet. Wir haben Strecken in Maps gemalt und vermessen, uns die Koordinaten gemerkt und nach Orten zur Lokalisierung gesucht. Das ist jetzt schon zwei Jahre her uns sollte jetzt noch besser funktionieren und einen größeren Funktionsumfang haben als bei uns damals. Zusätzlich zur Low Level API von Google gibt es auch für verschiedene Frameworks (Java, Ruby, Grails, ...) Abstraktionen, die das Handling vereinfachen sollen. Wir haben das allerdings damals nicht verwendet, weil noch nichts vernünftig funktioniert hat. :)

    MfG
    Peter

    Schöne Grüße,

    Peter

    1. Servus Peter,

      danke für deine Antwort.

      Google arbeitet hier mit Längen- und Breitengrad.

      Derzeit arbeite ich so damit, dass ich dem Benutzer zumindest bereits die Option zur Angabe seines Länge- und Breitengrades biete. Von daher liegen mir meine Daten bereits in dieser Verfassung vor.

      Hier gibt es in meinen Augen kein wirksames Mittel. Wenn der Benutzer die Karte hat, kann er machen, was er will (klickenderweise).

      Das ist Schade, aber kein K.O.-Kriterium.

      Die sind ja eh bei Dir in der Datenbank, oder? Das sollte kein Problem sein.

      Jep, s.o. Mir ging es nur darum, in welchem Format die Daten vorhanden sein sollten. Aaber das hast du ja weiter oben bereits geklert.

      Also die erste Anlaufstelle ist http://code.google.com/intl/de-DE/apis/maps/

      Ok, war mir bereits ein Begriff.

      [..] Low Level API [..] verschiedene Frameworks Abstraktionen

      Sup, dann werde ich mich hier mal weiter schlau machen.

      Danke!

      Peter

      Same same ;-)

      1. [...]
        Jep, s.o. Mir ging es nur darum, in welchem Format die Daten vorhanden sein sollten. Aaber das hast du ja weiter oben bereits geklert.

        Ach so, wir haben hier verschiedene Daten mit gespeichert. Neben der latitude und longitude auch die von Google gelieferten Ergebnisse zur Adresse. Bei Suchen, für die uns Google nicht die Adresse in der gewünschten Auflösung geliefert hat oder die wir gar nicht abbilden konnten (z.B. reverse geocoding), haben wir auch geonames.org zurückgegriffen. Das bietet einen freien Dienst an, der teilweise recht gut funktioniert (nur einmal hat eine gefragte iPhone Anwendung (iApp? :) ) den Server recht unter Last gesetzt und die Anwendung unseres Kunden damit mit.

        Peter
        Same same ;-)

        Der wichtigste Grund für eine Antwort. ;)

        Schöne Grüße,

        Peter

        1. Hallo pgoetz,

          du solltest dir mal die Beispiele zur Google Maps API ansehen, wenn es denn Javascript sein darf. Mit der API kannst du aus Adressen Koordinaten erzeugen und dann auf einer Karte auch "Fähnchen" setzen.

          http://code.google.com/intl/de-DE/apis/maps/documentation/examples/
          und da
          http://code.google.com/intl/de-DE/apis/maps/documentation/examples/geocoding-simple.html

          Was mit den Static Maps geht, weiß ich jetzt nicht.

          http://code.google.com/intl/de-DE/apis/maps/documentation/staticmaps/

          Gruß, Jürgen

          1. Hallo pgoetz,

            [...]

            Das musste ja schief gehen mit zwei Petern (Peters?) in einem Thread. Aber danke für den Hinweis, vielleicht finde ich ja wieder mal die Zeit (oder einen Kunden), für den ich wieder mit Google Maps arbeiten darf.

            Schöne Grüße,

            Peter

  2. Hallo allerseits,

    dank der Tips konnte ich nun wunderbar eine interkative Karte erstellen. Sprich, der Benutzer klickt auf einen Ort und ich bekomme die Längen- und Breitegrade zurückgeliefert.

    Zudem konnte ich auch eine Karte erstellen, die diese Werte auswertet. Sprich, ich bekomme eine Markierung an den aus Schritt eins selektierten Orten.

    Nun aber..
    bräuchte ich alle Orte eines Landes. Denke dies hat nun weniger mit Google-Maps zu tun. Hat einer eine Ahnung wie ich komfortabel an solche Daten gelangen kann? Meinetwegen auch gegen Gebühren.

    Wie ich bereits entdecken konnte, kann ich die Erfassung der Längen- und Breitengrade dann anschließend wieder anhand der Google-API vornehmen. Doch schön wäre natürlich, wenn ich bei den Daten direkt die Koordinaten mitgeliefert bekäme.

    Einer einen Tip oder bereits Erfahrung hiermit gemacht?

    Nochmals besten Dank im Voraus!

    MfG
    Peter

    1. [...]
      Nun aber..
      bräuchte ich alle Orte eines Landes. Denke dies hat nun weniger mit Google-Maps zu tun. Hat einer eine Ahnung wie ich komfortabel an solche Daten gelangen kann? Meinetwegen auch gegen Gebühren.

      Du kannst Dir zunächst mal den Service von geonames.org anschauen. Dort habe ich seinerzeit auch mal einen Dump der damals aktuellen Datenbasis erhalten. Allerdings ist das natürlich keine 100% Abdeckung.
      Was ist denn für Dich alles ein Ort? Geschlossene Ortschaften? Überall, wo ein Haus steht?
      ich arbeite gerade für eine Behörde und arbeite mit solchen Daten (Adressen, Gemeinden, Landkreise, usw.), und das ist teilweise nicht so ganz einfach zu beantworten. Die Post sieht das anders, als die öffentliche Verwaltung oder private Firmen.
      Was möchtest Du denn mit den Daten machen, vielleicht gibt es eine andere Möglichkeit.

      Schöne Grüße,

      Peter

      1. Hallo Peter,

        Du kannst Dir zunächst mal den Service von geonames.org anschauen. Dort habe ich seinerzeit auch mal einen Dump der damals aktuellen Datenbasis erhalten. Allerdings ist das natürlich keine 100% Abdeckung.

        Der erste Eindruck ist super! Werde mir gleich mal die zu Verfügung stehenden Schnittstellen naeher anschauen.
        Wie gelangst du zu der Aussage, dass die Abdeckung nicht komplett ist - bist du auf solche Fälle gestoßen?

        Was ist denn für Dich alles ein Ort? Geschlossene Ortschaften? Überall, wo ein Haus steht?

        Das ist eine gute Frage. Bei mir geht es noch ein wenig weiter, den selbst touristisch erschlossene Gebiete müsste ich erfassen (es geht um eine Übersichtsseite für Unterkünfte)

        Was möchtest Du denn mit den Daten machen, vielleicht gibt es eine andere Möglichkeit.

        Ich muss sie zu Verfügung stellen ;-) Sprich, Resortleiter können ihr Resort auf meiner Seite anmelden. Und hierfür müssen dann natürlich alle möglichen Orte zu Verfügung stehen.

        Danke & MfG
        Peter

        1. [...] Wie gelangst du zu der Aussage, dass die Abdeckung nicht komplett ist - bist du auf solche Fälle gestoßen?

          Das liegt an der Art, wie dieser Dienst an seine Daten kommt. Die werden von freiwilligen Helfern eingetragen (Wikipedia-Prinzip) und deshalb muss es zwangsläufig zu Lücken kommen. Für uns hat die Datenbasis allerdings damals schon sehr gut ausgereicht.

          Was ist denn für Dich alles ein Ort? Geschlossene Ortschaften? Überall, wo ein Haus steht?
          Das ist eine gute Frage. Bei mir geht es noch ein wenig weiter, den selbst touristisch erschlossene Gebiete müsste ich erfassen (es geht um eine Übersichtsseite für Unterkünfte)

          Dann wird das Problem eh noch komplexer, denke ich. Für POIs gibt es meines Wissens nach keine öffentliche Datenbasis, hier arbeiten die meisten Dienste vermutlich mit redaktionell gepflegten Datenbeständen. Wenn Du Kontakte zu Google hast, könntest Du bei denen nachfragen, wo die ihre Informationen zu dem Thema herhaben. Dort finde ich manchmal die eine oder andere "touristische Attraktion".

          Was möchtest Du denn mit den Daten machen, vielleicht gibt es eine andere Möglichkeit.
          Ich muss sie zu Verfügung stellen ;-) Sprich, Resortleiter können ihr Resort auf meiner Seite anmelden. Und hierfür müssen dann natürlich alle möglichen Orte zu Verfügung stehen.

          Können diese Ressortleiter die redaktionelle Pflege übernehmen? Das ist der Weg, den meine Kunden jetzt gehen: weg von der Community, hin zu redaktioneller Bearbeitung des Angebots.

          Schöne Grüße,

          Peter