На основе этого учебного пособия я создал страницу, которая работает правильно. Я добавил пару выпадающих списков на страницу и, основываясь на этом фрагменте , смог соответствующим образом отфильтровать результаты. Так что на практике все работает как надо. Однако мой вопрос касается эффективности процедуры. Прямо сейчас процесс выглядит примерно так:
1.) Страница посещения пользователя
2.) Тело onload () называется
3.) Javascript вызывает скрипт PHP, который запрашивает базу данных (на основе критериев, переданных через URL) и экспортирует этот запрос в файл XML.
4.) Затем файл XML анализируется с помощью javascript на локальном компьютере пользователя.
Для любого одного поиска может быть несколько тысяч результатов (и, следовательно, несколько тысяч маркеров для размещения на карте). Как вы уже догадались, размещение всех маркеров занимает много времени. У меня есть несколько идей, чтобы ускорить его, но я хотел бы поговорить с опытными пользователями, чтобы убедиться, что моя логика верна. Я открыт для любых предложений!
Идея # 1: Есть ли способ (и ускорит ли это процесс?), Чтобы один раз выполнить запрос, сгенерировав XML-файл с помощью PHP, который содержал все возможные результаты, сохранить XML-файл локально, а затем выполнить фильтрацию с помощью JavaScript
Идея № 2: Создать на сервере задание cron для экспорта XML-файла в известное место. Вместо использования «Gdownloadurl (phpfile.php») я бы использовал gdownloadurl (xmlfile.xml). Таким образом, устраняется необходимость запуска нового запроса каждый раз, когда пользователь меняет значение раскрывающегося списка
Идея № 3: Вместо того, чтобы передавать критерии обратно в файл php (через URL), я должен просто фильтровать результаты с помощью javascript перед размещением маркера на карте?
Я видел много веб-страниц, которые размещают тонны и тонны маркеров на карте Google, и это занимает не так много времени, как мое приложение. Какова стандартная практика в такой ситуации?
Спасибо!
Редактировать: В моей логике может быть недостаток: если бы я экспортировал все результаты в файл XML, как (кроме javascript) я мог бы затем отфильтровать эти результаты?