Latitude und Longitude

Moin Moin,

ich würde gerne in einem Eintragungsformular eine Karte ähnlich wie dieser darstellen:

http://universimmedia.pagesperso-orange.fr/geo/loc.htm

Benutzer sollen über den Marker oder ein Adresseingabefeld selbst latitude und longitude ermitteln können.

Gibt es hier bereits ein ähnliches Beispiel für OSM?

Sowas kann zB MapQuery und da dies auf OpenLayers basiert, wird das auch in der Lage dazu sein.

Turntab,

darfste Dir bei mir klauen: http://yapis.eu/?id=3&lang=de

LG,

-moenk

yapis.eu ist echt ne tolle Seite!

Leider kann ich diese Karte nicht gebrauchen, da dass Adressfeld fehlt. Und das ist **leider **absolut notwendig. Für einen Besucher der auf mapradar.de ein neues Ziel
einträgt ist es nicht zumutbar durch die Weltkarte zu zommen und die richtige Straße / Nr. anzuklicken. Zumal ja auch keine Hausnummern dargestellt werden.

Eventuell gibt es aber etwas anderes, eine Abfrage der Geodaten vn OSM die bei Überlieferung von Parametern wie Straße, PLZ, Ort, Hausnummer die beiden Angaben zurückgibt?
z.B.

 $array = $this->getLatLong("city", "zip", "street", "no");

Zitat von http://yapis.eu/?id=3&lang=de :
“Tipp: Die Suche oben rechts verwenden, um Orte zu finden!”

Ja, das ist das was ich suche.

@moenk Wäre Super wenn du mir sagst wie du die Werte ermittelst? Bzw. welche Abfrage du dort machst.

Da ist das openlayers Beispiel dazu

http://openlayers.org/dev/examples/click.html

das ganze ist ein openlayers control, das den Mausklick abfängt, die Koordinaten bekommt man dann mit der methode getLonLatFromPixel

Ich vermute mal, er fragt Nominatim

Moin,

natürlich, das ist ein URL-Aufruf von Nominatim, dazu gabs auch hier im Forum schon mal ein Beispiel, man bekommt dann ein XML, wo alles drinsteht was man verwerten kann. Openlayers bietet dann komfortable Optionen um alles darzustellen.

LG,

-moenk

Nachtrag, ein wenig Code dazu:

$osm_server="http://nominatim.openstreetmap.org/search?q=";
$url= $osm_server.$suchbegriff."&format=xml&accept-language=$lang&email=webmaster@yapis&limit=30";
$datei="files/".md5($url).".xml";

if ((file_exists($datei)) && (filemtime($datei)>time()-3600)) {
  $xml = simplexml_load_file($datei);
} else {
  $result=cURLdownload($url,$datei);
  $xml = simplexml_load_file($datei);
}

Ein Beispiel für Nominatim-Abfragen mit JS und PHP wurde hier beschrieben. Eigentlich wird dort die Nominatim-Installation bei mapquest verwendet. Inzwischen würde ich wieder das Original vorziehen, also einfach in der URL “open.mapquestapi.com/nominatim/v1/search?q=” durch “nominatim.openstreetmap.org/search?q=” ersetzen…

Doku dazu gibts auf SunCobalts Wiki-Seite. Die schöne Formatierung und Karten-Vorschau wie bei YAPIS ist aber nicht dabei…

Grüße, Max

Moin Moin, Max

gibt es einen Grund dafür? Klar, aber welcher?
Sind “wir” inzwischen besser, schneller oder sonst was? Oder hat MapQuest irgend was verändert?
Es würde mich freuen, wenn “unser” Nominatim" der Grund dafür sein sollte.

Gruss
walter

Hi Walter,

die Verbesserung unseres Nominatim ist der Grund dafür.

Ein Grund waren die Nutzungsbestimmungen von Nominatim (nicht häufiger als 1/s fragen, nur ein thread, Fragen muss man auf sinnhaftigkeit prüfen, Antworten cachen …). Die gelten natürlich immer noch, aber bei den hier so behandelten Kleinprojekten ist das keine wirkliche Einschränkung, denke ich.

Hauptgrund war aber, dass mir Nominatim letztes Jahr eher instabil und schlecht geupdatet vorkam, im Gegensatz zu Mapquest. Mapquest ist immer noch stabil, aber Nominatim inzwischen auch und die Update-Zyklen scheinen mir bei Nominatim kürzer (auch wenn ich gerade nicht weiss ob ich “10.7.2012” von der Homepage oder “Lag=6 Stunden” von der Munin-Seite dazu glauben soll. Schwierig in den Zeiten des Bots… :wink: )

Grüße, Max

Danke für die Info. Toll, dass sich da was getan hat.

Ich finde heute Adressen, die ich gestern Abend eingetragen habe. Also sollte 10.7.2012 wohl eher falsch sein.

sorry, war nix. ausserdem passt der Lag auf der Seite zum 10.7.12 - import gestoppt wegen Lizenzgeschichte, nehme ich mal an.

Gruss
walter