Перейти к содержимому

Фотография
- - - - -

Яндекс карта выбор города


  • Вы не можете создать новую тему
  • Закрытая тема Тема закрыта
Сообщений в теме: 7

#1 Lazar888

Lazar888

    Прохожий

    Топикстартер
  • Участник
  • 0
    20 сообщ.

Отправлено 21 Февраль 2018 в 10:38

Доброго времени, я наверное тут уже всем надоел)) Подскажите пожалуйста знающие люди, суть в том что скрипт сайта подразумевает отметку адресов на Яндекс карте, но проблема в том что, скрипт подразумевает разные города, а я переделываю его в локализованный (один город), так вот если на главной странице убрать возможность выбора города из таблицы Mysql:
<!--
Город: 
 
<a class="city_trigger1" title="Не выбран" href="<? echo "$siteadress/";?>city.php"><? echo "$srcityshowtop";?></a>
-->
 
То Яндекс карта не цепляет город, и по умолчанию показывает Москву, т.е. нет геолокации
 
файл city.php, дает команды на выбор Страны-Региона-Города из таблицы,
 
файле настройки карты:
 

$city=$myrow["city"];
$country=$myrow["country"];
$region=$myrow["region"];
 
$citytar=$city;
if ($city=='0') {$citytar=$region;}
if ($region=='0' and $city=='0') {$citytar=$country;}
$resultadd3 = @mysql_query("SELECT * FROM $citytable WHERE ID='$citytar'");
while($myrow1=mysql_fetch_array($resultadd3)) {
$citys=$myrow1["categ"];
if ($city=='0') {$citys=$myrow1["podrazdel"];}
if ($city=='0' and $region=='0') {$citys=$myrow1["razdel"];}
}
 
}
 
?>
 
<script src="https://api-maps.yandex.ru/1.1/index.xml?key=<? echo "$yandexapikey";?>" type="text/javascript"></script>
  <script type="text/javascript">
//Создание обработчика дл¤ событи¤ window.onLoad
    YMaps.jQuery(function () {
      //—оздание экземпл¤ра карты и его прив¤зка к созданному контейнеру
      var map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]);
      //”становка дл¤ карты ее центра и масштаба
 
// геокодирование
var geocoder = new YMaps.Geocoder("<? echo "$citys";?>");
YMaps.Events.observe(geocoder, geocoder.Events.Load, function () {
    if (this.length()) {
        map.addOverlay(this.get(0));
        map.panTo(this.get(0).getGeoPoint()) 

Отсюда вопрос, каким образом либо удалить из кода возможность выбора города и жестко закрепить один город, либо для настроек Яндекса жестко прописать город?


Сообщение отредактировал BaNru: 21 Февраль 2018 в 13:29
Начни уже пользоваться кнопкой CODE для вставки кода!

  • 0

Спонсор

#2 BaNru

BaNru

    Пацифизжу

  • суперМодератор
  • 1015
    3 690 сообщ.

Отправлено 21 Февраль 2018 в 13:33

Не удаляя открой исходный код страницы в браузере и посмотри что будет вот тут стоять, вместо СИТИС

var geocoder = new YMaps.Geocoder("<? echo "$citys";?>");

По идее там должны быть координаты или название. Скопируй себе их.

И потом в коде выше удали первую половину кода в том то что ты привёл, до ?>

А во второй половине укажи эти самые данные которые ранее скопировал

var geocoder = new YMaps.Geocoder("[21312312,21312123]");

  • 0

#3 Lazar888

Lazar888

    Прохожий

    Топикстартер
  • Участник
  • 0
    20 сообщ.

Отправлено 21 Февраль 2018 в 14:47

 

Не удаляя открой исходный код страницы в браузере и посмотри что будет вот тут стоять, вместо СИТИС

var geocoder = new YMaps.Geocoder("<? echo "$citys";?>");

По идее там должны быть координаты или название. Скопируй себе их.

И потом в коде выше удали первую половину кода в том то что ты привёл, до ?>

А во второй половине укажи эти самые данные которые ранее скопировал

var geocoder = new YMaps.Geocoder("[21312312,21312123]");

Нет там наименование города

// геокодирование
   var geocoder = new YMaps.Geocoder("Екатеринбург");
   YMaps.Events.observe(geocoder, geocoder.Events.Load, function () {   if (this.length()) {   map.addOverlay(this.get(0));   map.panTo(this.get(0).getGeoPoint())

  • 0

#4 BaNru

BaNru

    Пацифизжу

  • суперМодератор
  • 1015
    3 690 сообщ.

Отправлено 21 Февраль 2018 в 15:04

Ну значит так и пиши

var geocoder = new YMaps.Geocoder("Екатеринбург");

  • 0

#5 Lazar888

Lazar888

    Прохожий

    Топикстартер
  • Участник
  • 0
    20 сообщ.

Отправлено 21 Февраль 2018 в 15:42

 

Ну значит так и пиши

var geocoder = new YMaps.Geocoder("Екатеринбург");

Ничего не меняется карта стоит на координатах указанных по умолчанию Москва((


  • 0

#6 BaNru

BaNru

    Пацифизжу

  • суперМодератор
  • 1015
    3 690 сообщ.

Отправлено 21 Февраль 2018 в 15:55

А если включены города, то переключается на Екб?


  • 0

#7 Lazar888

Lazar888

    Прохожий

    Топикстартер
  • Участник
  • 0
    20 сообщ.

Отправлено 21 Февраль 2018 в 16:01

А если включены города, то переключается на Екб?

Да, как только выбираю город забитый в базу, карта отображается именно его


  • 0

#8 BaNru

BaNru

    Пацифизжу

  • суперМодератор
  • 1015
    3 690 сообщ.

Отправлено 21 Февраль 2018 в 16:05

А если ты вставляешь как я сказал "ЕКб", то в исходном коде он появляется?

 

Пробуй ещё раз, внимательно читая что я писал выше.

Должно работать.

Иначе я не знаю причину.


  • 0



Похожие темы Свернуть

Статистика

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 скрытых пользователей