Я бы никогда не попытался реализовать это сам. Используя HTML5, вы можете получить лучшее местоположение для компьютера / устройства, которое пытается просмотреть страницу. Один из запасных вариантов, который используют браузеры, когда к нему не подключено устройство GPS для поиска местоположения IP-адреса. Это работает только в браузерах HTML5, но это очень быстрое и дешевое решение.
Javascript:
navigator.geolocation.getCurrentPosition(show_map);
function show_map(position) {
var lat = position.coords.latitude;
var lng = position.coords.longitude;
}
Если вы хотите больше подробностей, я считаю этот сайт действительно полезным.
http://diveintohtml5.ep.io/geolocation.html