Клуб API Карт

Запись дополнительных данных в балун ymaps.geocode(<адрес>)

johnsnow911
17 декабря 2013, 08:16

 Задача состоит в следующем: автоматически на карту помещаются метки сервисных центров по адресам из текстового файла. Но на балуне при нажатии выводится только адрес, а хотелось бы и дополнительную инфу. Как это можно реализовать. Я прочитал, что можно заменить эти балуны на свои метки, но тогда, как мне их позиционировать не по координатам, а по адресу?

10 комментариев
Подписаться на комментарии к посту

Прогеокодируйте все ваши метке на сервере один раз с помощью http-геокодера и выводите по координатам

Дело в том, что адреса парсятса из файла, который может каждый день обновляться, вы предлагаете сначала перекодировать в автоматическом режиме все адреса, а потом на этой основе метки выставлять? А можно ссылку на мануал какой-нибудь по http-геокодеру хотя бы?

А расскажите, пожалуйста, что у Вас за проект? есть ссылка?

Ну проект, в принципе, простой. Ссылки нет, к сожалению, т.к. на локальном сервере всё происходит. На странице с сервисными центрами предприятия внедрил карту. С помощью пхп, скрипт яндекс карт, выдранный из песочницы, добавляет метки сервисных центров по адресам, записанным в файле xml, но подключается этот файл через пхп. Вот мне нужно, чтобы к меткам, которые получились добавить названия сервисных центров, которые тоже из xml выдираются. Код выглядит так:

Сначала парсятся из xml адреса и имена сц в отдельные массивы. Сделал так, чтобы с многомерным не заморачиваться.

foreach ($xml->xpath('//ExtSCExport/Country') as $COUNTRY){

foreach ($COUNTRY->children() as $REGION){

foreach ($REGION->children() as $CENTR){

$mascentry[]=iconv("utf-8","windows-1251",$CENTR["Address"]);

$masname[]=iconv("utf-8","windows-1251",$CENTR["Name"]);

}

}

}

Затем, внедряю яндекс-карты скрипт:

echo '

   

Согласно пользовательскому соглашению АПИ нельзя использовать на локальных внутренних ресурсах. Ваш сайт должен быть в свободном доступе

Я только тестирую систему, мне не дают на живом сайте с этим работать. Пока я не сделаю её работоспособной.

Почему сервисные центры одной компании каждый день разные?

Как часто меняются адреса этих центров?

Не каждый день, конечно, но файл, в котором они записаны может поменяться в любой момент.

Я перенес на внешний сайт проект. Вот прямая ссылка: http://topazelectro.ru/files/map.php Посмотрите, пожалуйста, очень нужны рекомендации.

Лучше все ваши адеса хранить в БД, а не файле

и прогеокодировать и сохранить координаты в эту же БД

Документация на http-геокодер

Пример геокодирования адресов из БД