hallo Leute,
ich bin gerade dabei über eine Flash-Grafik von Baden-Württemberg, die x/y Punktkoordinaten zu bestimmen und an ein PHP Script weiterzugeben. Im PHP Script möchte ich nun über ein SQL Statement den naheliegendsten Ort, sprich an dem der Breiten- UND Längengrad am nächsten an meinen Parametern ist ermitteln.
In den Klammern stehen folgende Daten:
- an erster Stelle: der Startbreiten- bzw. -längengrad,
- an zweiter Stelle: der x bzw. y-Pixel Parameter
- und an der dritten Stelle: das Verhältnis Längengrade/Pixel
SQL:
SELECT
(47.5785313+60*0.00524676) AS eingabeBreite,
(6.9237+125*0.00741005) AS eingabeLaenge,
name, breite, laenge, plz
FROM plzTabelle
WHERE
breite>(47.5785313+60*0.00524676) AND
laenge>(6.9237+125*0.00741005)
ORDER BY breite, laenge LIMIT 1;
+---------------+---------------+--------------+--------+--------+--------+
| eingabeBreite | eingabeLaenge | name | breite | laenge | plz |
+---------------+---------------+--------------+--------+--------+--------+
| 47.89333690 | 7.84995625 | Hinterzarten | 47.9 | 8.1 | 79856 |
+---------------+---------------+--------------+--------+--------+--------+
Die Werte sind ja eigentlich relativ nah an meinem gewünschten Ergebnis, doch sollte er nicht Hinterzarten sondern Freiburg liefern. Hat jemand eine Idee, wie ich das SQL Statement umbauen kann? Gibt es alternativ vielleicht eine einfachere Möglichkeit?
Freiburg hat beispielsweise folgende Koordinaten:
Breitengrad 48 , Längengrad 7,85
Vielen Dank für eure Hilfe.
Joah.