Я хочу использовать геолокацию на своем php-сайте. Итак, что я сделал? Пользователи могут добавлять в базу данных такую информацию, как имя, УЛИЦА, НОМЕР ДОМА и т. д. Эта информация четко хранится в базе данных. Если люди ищут место с помощью функции поиска, они получают список мест, которые они искали.
На каждое найденное место в списке пользователи могут нажать и получить более подробную страницу о конкретном месте (записи). На этой странице должна быть геолокация. Я уже использовал Google и обнаружил, что мне нужно преобразовать адрес в широту/долготу. Эту широту и долготу необходимо добавить в базу данных, но я не знаю, в какой момент (уже в функции добавления, после в отдельной функции) и как я собираюсь это сделать. В данный момент у меня есть функция, которая рассчитывает долготу и широту. Я сохранил их в двух переменных в JavaScript, но теперь застрял.
Здесь вы видите код, который у меня уже есть.
$(document).ready(function () {
// wire up button click
$('#go').click(function () {
// get the address the user entered
var straat = $('#straat').val();
var nummer = $('#nummer').val();
var address = straat + " " + nummer;
alert(address);
if (address) {
// use Google Maps API to geocode the address
// set up the Geocoder object
var geocoder = new google.maps.Geocoder();
// return the coordinates
geocoder.geocode({ 'address': address }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[0]) {
// print results
printLatLong(results[0].geometry.location.lat(),
results[0].geometry.location.lng());
} else {
error('Google did not return any results.');
}
} else {
error("Reverse Geocoding failed due to: " + status);
}
});
}
else {
error('Please enter an address');
}
});
});
// output lat and long
function printLatLong(lat, long) {
var latitude = lat;
var longitude = long;
$('.results').text(latitude);
}
function error(msg) {
alert(msg);
}
Подробнее здесь: https://stackoverflow.com/questions/105 ... d-database