Hallo!
Einerseits gibt es Geo-IP-Services, die Datenbanken mit IP-Adressen pflegen, die recht grob Geokoordinaten zugeordnet sind. Die sind kostenlos oder auch kostenpflichtig. Z.B. http://freegeoip.net/
Andererseits gibt es den clientseitigen Zugriff auf die Geo-Koordinaten mittels JavaScript:
http://wiki.selfhtml.org/wiki/JavaScript/API/Geolocation
http://diveintohtml5.info/geolocation.html
Der Client kann hier die ihm zur Verfügung stehenden Techniken verwenden, um die Position zu ermitteln. Das kann ein GPS-Modul sein, der Abgleich der empfangenen WLAN-SSIDs mit einer zentralen Datenbank oder die Abfrage eines Geo-IP-Dienstes. Das Auslesen der Koordinaten mit JavaScript erfordert eine Zustimmung des Nutzers.
Grüße
Mathias