Аналог 2gis по функционалу

210
11 сентября 2018, 04:30

В больших городах удобно использовать 2gis, чтобы элементарно узнать расписание, для маленьких городов такого не существует. Подскажите варианты создания подобного сервиса, чтобы была карта, может даже использовать yandex/google или создать как то свою, чтобы при нажатии на объект из базы подгружались данные. Сам хорошо владею PHP (Yii2), HTML, CSS, JQ. Но не представляю каким образом реализовать карту.

P.S. Основной функцией является следующее: клик по зданию -> из моей базы загрузились все организации, по каждой также можно кликнуть, узнать номер/расписание и т.п.

Answer 1

Использую Leaflet + (MapBox, OSM).

  • Leaflet - API. Простой и легкий (к тому же автор отечественный - Владимир Агафонкин).
  • MapBox - Сервер отрендереных слоев, и редактор. Очень мощный инструмент для работы со слоями.
  • OSM - наиболее полные данные, даже для моего небольшого города указано все, включая тропинки.
Answer 2

https://tech.yandex.ru/maps/?lang=ru-RU Вот через инструменты яндекса можешь через js(к сожалению через js тут все) https://tech.yandex.ru/maps/jsbox/balloon_and_hint/ а вот тут все примеры и код можешь посмотреть даже начальные знания js помогут изменить по править по примерам. Вот еще нашел кое что https://maps-creator.com/ может быть есть в ней польза для вас.

Answer 3

Принцип такой: Пользуешься api понравившихся карт. С помощью его же ну и естественно js стилизуешь карту на свое усмотрение. Придется читать.

  • По клику на нужные объект запускаешь функцию, которая возвращает данные о его координатах.
  • Далее отправляешь ajax запрос на сервер, там устанавливаешь погрешность координат в пределах которых должны искаться данные в базе. (естественно данные об объекте должны быть в бд).
  • Делаешь запрос к базе, где ищешь объект в пределах твоих координат.
  • Отправляешь результат во вьюху, выводишь вьюху

другой вариант если есть подробные данные о фирмах и организациях. в каком то сервисе:

  • По клику на нужные объект запускаешь функцию, которая возвращает данные о его координатах.

  • Отправляешь координаты в сервис, получаешь результат

READ ALSO
Роутер PHP. Вызов методов

Роутер PHP. Вызов методов

Написал роутер:

215
Как вырезать цифры PHP?

Как вырезать цифры PHP?

Как в строке

200
Полнотекстный поиск по типу LIKE или NEAR с плэйсхолдером

Полнотекстный поиск по типу LIKE или NEAR с плэйсхолдером

Поиск выводит только полное совпадение в ячейке, не могу найти как искачь по части иекста (например 4-5 символов и чтобы нашло все ячейки в которых...

224
Вывести родителей в рекурсии

Вывести родителей в рекурсии

написал вывод дерева:

183