Как по координатам из Вконтакте

Часто возникает необходимость найти место по полученным координатам. Их вам могли прислать по SMS, в мессенджере, можно их увидеть в отчете по походу, или вы сами записали их где-то.

Кажется всё. Вступайте в группу Шурикtravel, подписывайтесь на Инстаграм!

Один комментарий

Уведомление: Определение, передача координат телефоном и поиск места по ним.

Группа Шуриктревел в Vk

Статьи о туризме с рюкзаком

  • Документы и бюрократия для туристов (3)
  • Картография и навигация (17)
  • Костер, горелки и приготовление еды в outdoor (13)
  • О снаряжении (25)
  • Общетуристическое (26)
  • Первая помощь и ПСР (4)
  • Пешие походы (13)
  • Походная электроника и связь (13)
  • Походы зимой (8)
  • Походы с альпинистским снаряжением (6)

Источник: shuriktravel.ru

newz20

Всего в статье рассмотрим 3 сервиса геокодирования. Это все знаменитые и знакомые нам картографические сервисы.

Спас районында махсус хәрби операциядә һәлак булган 4 егетне соңгы юлга озаттылар

Google — работает с api ключем и первым ввел его в сервис геокодирования, ключ дается на год бесплатно, а дальше я не читал. Да и не важно, раз в год можно и побаловать Гиганта созданием нового аккаунта.

В классе Users cоздаем метод SetLocation

$Coordinates=$this->getProperty(«Coordinates»); $lat=substr($Coordinates,0,strpos($Coordinates,»,»)); $lon=substr($Coordinates,strpos($Coordinates,»,»)+1); $this->setProperty(«Location»,Getgeocode($lat,$lon));

Там же создаем свойство Location
Метод привязваем на изменение координатам
Идем в файл своих функций (my_funcs.php лежит в папке lib) и вставляем

function Getgeocode(($lat, $lon)) < $data_file=»https://maps.googleapis.com/maps/api/geocode/xml?latlng=$lat,$lonlanguage=ru»; $xml = simplexml_load_file($data_file); $res=$xml->result[0]->formatted_address; return $res; >

В конце файла должна быть пустая строка
При изменении координат запускается метод и вызывает функцию и возвращает адрес в свойство Location.
Так каждый пользователь получил адрес прибывания по координатам на момент их обновления.

Еще по теме:  Что такое безлимит на Вконтакте теле2

Яндекс — до недавнего времени мой любимый поставщик адресов работал без api ключа, сегодня api ключ стал требовать (кто-то утверждает что работает и без апи еще, не мой случай), получить можно тут https://developer.tech.yandex.ru/services/, но там что-то про правила бесплатного использования и т.д. Короче не так скоро и нас забанят, конечно если не гнать запросы через реальный сайт указанный в заявке.
Все по инструкции выше кроме вставки самой функции, тут другой код будет

Код для своих функций (my_funcs.php лежит в папке lib) с указанием api ключа

function Getgeocode($lat, $lon) < $api=’Ваш_АПИ_КЛЮЧ’; $data_file=»http://geocode-maps.yandex.ru/1.x/?apikey=».$api.».$lon.»,».$lat; $xml = simplexml_load_file($data_file); $res=$xml->->[0]->->->->->->; return $res; >

код без ключа, ну а вдруг будет работать

ОВ и ВК. Урок 6. Задание общих координат


function Getgeocode($lat, $lon) < $data_file=»http://geocode-maps.yandex.ru/1.x/?geocode=».$lon.»,».$lat; $xml = simplexml_load_file($data_file); $res=$xml->->[0]->->->->->->; return $res; >

Openstreetmap — Раньше меня Яндекс полностью устраивал, ну а теперь пришло время открытых и бесплатных проектов. «Ограничения: один запрос в секунду.» — уверен нам хватит.
Все по инструкции выше кроме вставки самой функции, тут другой код будет

Код для своих функций (my_funcs.php лежит в папке lib) с указанием api ключа

function Getgeocode($lat, $lon) < $URL = «https://nominatim.openstreetmap.org/reverse?format=json.$lat.».$lon.»addressdetails=1″; $data = getUrl( $URL ); $json = json_decode( $data); $res = $json->address->state.», «; $res .=$json->address->city.», «; $res .=$json->address->road.», «; $res .=$json->address->house_number; return $res; >

Вот собственно и все.
P.S. У меня в файле функций есть каждый из кодов. Имеют они названия с порядковыми номерами, function Getgeocode2($lat, $lon), function Getgeocode3($lat, $lon) и конечно function Getgeocode($lat, $lon). Теперь если нам захочется сменить Openstreetmap обратно на Яндекс, идем в метод SetLocation и правим тут номер $this->setProperty(«Location»,Getgeocode2($lon,$lat));.

Еще по теме:  Можно ли сидеть в ВК с двух страниц одновременно с телефона

P.P.S. Внимание встречаются люди у которых выводит адрес вообще другого места и даже страны. В меняйте местами переменные $lat и $lon вот тут function Getgeocode(($lat, $lon))

Не забываем нажимать палец вверх, это стимулирует авторов к написанию других статей.

Источник: connect.majordomohome.com

Как наладить поиск адреса по координатам (и где взять нужный справочник)

Весной мы добавили в API DaData.ru фичу «Обратное геокодирование», она же «Адрес по координатам». Название намекает: метод принимает геокоординаты и отдает данные об адресе.

Солидный продукт с той же функциональностью предлагает «Яндекс» — он называется «Геокодер». Но сервис «Яндекса» бесплатен только для открытых некоммерческих проектов. Стандартный же тариф — от 120 000 ₽ в год — подходит не всем.

Рейтинг
( Пока оценок нет )
Загрузка ...