Эта статья о совместном использовании двух…
Эта статья о совместном использовании двух web сервисов: IPLoc и Яндекс. Карты. Прежде всего, разберемся зачем нужны одновременно два сервиса. С Яндекс. Картами, все просто. Этот сервис позволяет разместить на странице спутниковую или обычную карту. При этом карта будет интерактивной, т. е. посетитель сможет перемещать её, изменять масштаб, тип, измерять расстояния и т. д. Сервис IPLoc, в свою очередь, позволяет определить географические координаты указанного IP адреса, т. е. широту и долготу. А это как раз те данные, которые нужны чтобы указать точку на Яндекс.
Карте. Примечание. Вместо Яндекс. Карт можно использовать Google Maps, о которых я уже рассказывал.
В этот раз я выбрал Яндекс. Карты потому что они содержат более подробные карты с названиями улиц для городов СНГ. Таким образом, используя оба сервиса одновременно мы можем определить место нахождения посетителя и показать его на карте. Принцип работы. 1) С помощью IPLoc определяем где находится посетитель. 2) Размещаем на странице Яндекс. Карту. 3) Центрируем карту в соответствии с полученными координатами. 4) Дополнительно можно разместить на карте сообщение (балун) с каким-нибудь текстом, например, названием города. Получение данных от IPLoc. Прежде всего нужно сформировать запрос вида http://iploc. mwudka. com/iploc/ххх. ххх. ххх. ххх/format Вместо ххх. ххх. ххх. ххх подставляем нужный IP адрес. Последний сегмент адреса указывает формат в котором вы хотите получить данные. С точки зрения обработки PHP скриптом, самым удобным является JSON формам. В этом случае можно преобразовать строку с данными в объект PHP с помощью всего одной функции – json_decode. Т. е. запрос примет вид http://iploc. mwudka. com/iploc/ххх. ххх. ххх. ххх/json Теперь пару слов об использовании Яндекс. Карт. Прежде всего, вам придется зарегистрироваться на Яндексе и получить API-ключ. Примечание. В отличие от Google Maps получить ключ для localhost’а нельзя, поэтому чтобы локально потестировать сайт создайте виртуальный хост, например, http://mysite. l и получите ключ для него (главное, чтобы имя состояло хотя бы из двух частей, разделенных точкой). UPD. Тут я ошибся. См. комментарий Андрея Кармацкого. Переходим к реализации Создаем PHP скрипт (index. php) со следующим кодом.