Google Maps - Извлечь координаты центра карты? - PullRequest
0 голосов
/ 10 мая 2011

Я надеюсь использовать Google Map таким образом: Пользователь увеличивает желаемое местоположение (используя панорамирование и масштабирование или панель поиска над картой), а координаты центра карты передаются в мой PHP-скрипт как «$ lat» и «$ lon» ИЛИ "$ Coords". Если бы кто-то мог найти или написать какой-то код, который делает это, я бы обрадовался ... Дайте мне знать, если потребуется дополнительная информация ... Мое понимание JavaScript (и даже PHP) ограничено, поэтому, пожалуйста, постарайтесь быть настолько полным, насколько вы можно:)

1 Ответ

1 голос
/ 10 мая 2011

Итак, это будет проблематично (и практически невозможно), потому что PHP-код выполняется на стороне сервера, прежде чем страница завершит загрузку в браузере клиента.Javascript выполняется «вживую», когда пользователь выполняет какие-либо действия в браузере, поэтому на самом деле простого простого способа перехода с JS на PHP не существует.

Чтобы правильно ответить на вопрос, нам нужно знать, что вы хотитечто делать с данными координат, и где находится вся эта «структура» в вашем приложении, например:

  • Выбирают ли пользователи местоположение, а затем отправляют его вам и все?
  • Выбирают ли они несколько мест (например, кнопки или что-то еще) одно за другим (что-то вроде «моих любимых мест»)
  • Можете ли вы записать в БД и обработать места, когда они сделаны?

У вас есть несколько вариантов (от простого к сложному)

  1. Попросите пользователя повернуть / увеличить карту до нужного места, затем нажать некоторую кнопку и в этот моментвытяните координаты с карты и вставьте их в какой-нибудь PHP-скрипт (через GET или POST)
  2. Запись в базу данных - и включите кнопку «Готово», которая запускает PHP-скрипт для обработки данных.
  3. Позвольте использовать• перемещайтесь по карте, и когда они закончат движение, запустите небольшой таймер и обновите страницу, если они удерживают эту позицию в течение X времени.Когда вы обновите страницу, передайте координаты обратно на ту же страницу (через GET или POST).Когда вы получите его в PHP, сделайте с данными все, что вам нужно (и заново отцентрируйте карту по координатам. Это очень раздражает с точки зрения пользователя.

Поскольку вы спросили, вы можете получитьрасположение карты по центру с помощью map.getCenter(), которая возвращает пару широта / долгота

...