Клуб API Карт

Яндекс карты с меткой из поля адрес

poblasov
10 мая 2016, 18:35

На сайте был google map но последнее время перестал работать. Возможно ли с теми же переменными сделать Яндекс. карты чтоб при нажатии на кнопку показать карту загружалась карта с меткой адреса если указан адрес? Вот старый код для google

    <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&language=ru"></script>
    <script type="text/javascript">
     
     var geocoder;
      var map;
     
      function initialize() {
     
        geocoder = new google.maps.Geocoder();
    var latlng = new google.maps.LatLng(46.7, 25.1);
        var mapOptions = {
          zoom: 17,
        center: latlng,
          mapTypeId: google.maps.MapTypeId.ROADMAP
        }
        map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
      }
     
     
      function codeAddress() {
    google.maps.event.trigger(map, 'resize');
        var address = document.getElementById("address").value;
        geocoder.geocode( { 'address': address}, function(results, status) {
          if (status == google.maps.GeocoderStatus.OK) {
            map.setCenter(results[0].geometry.location);
            var marker = new google.maps.Marker({
                map: map,
                position: results[0].geometry.location,
      title: '<strong><?=$ads['title']?></strong><br/><?=@$ads['gmaps'] ?>'
            });
          } else {
            alert("Geocode was not successful for the following reason: " + status);
          }
        });
      }
     
    </script>

5 комментариев
https://tech.yandex.ru/maps/jsbox/2.1/direct_geocode
dimik,
Здравствуйте. Возможно это не совсем то что мне нужно или может я что то недопонимаю. У меня имеется  id элемента address это то что указанно на сайте в html и есть переменная из базы данных 'gmaps' в принципе наверно без разницы по чему будет выводится метка.  И все это работает при нажатии на кнопку показать адрес ссылка для примера http://gorodskayadoska.ru/c180-1022.html. т.е. наверно надо как то привязать выполнение скрипта к кнопке? В общем метка должна появится на карте по адресу что указан в 'gmaps' которая находится в базе данных и привязана к отдельно взятому объявлению.  А в примере метки нужно добавлять самому?
poblasov,
Метку можно поставить только по координатам. Если у вас есть только адрес, нужно сначала геокодировать его и получить координаты.
dimik,
Спасибо. Жаль что нет готового решения как у google.
dimik,
Не поможите правильно написать код геокодирования из текста а именно из переменной базы данных "gmap" или из html элемента с id address?