Я работаю над созданием карты Leaflet, которая имеет много и много маркеров. Чтобы сделать обновление карты проще, у меня есть все маркеры, хранящиеся в базе данных MySQL. У меня есть php-файл, который извлекает данные и помещает их в форму, которую может прочитать javascript, а затем присваивает их переменной.
Эта проблема:
Затем я хочу использовать какой-то метод (из того, что я читал, AJAX — самый безопасный и лучший метод), чтобы извлечь переменную из файла php и передать ее в файл .js для использования.
Я прочитал много разных вопросов, касающихся того, как это сделать, и я просто не могу понять, как именно я использую AJAX для извлечения переменной.
Я не знаю, как это сделать в Ajax.
Вот несколько примеров кода того, что я пытаюсь сделать:
получить-data.php
//do some php stuff here to pull data
$data = json_encode($datapulledfromDB);
marker.js
//do some ajax here to pull $data
//now here's my javascript that then uses $data
markerLayer = L.geojson(data, {
//e.t.c.
mapindex.php
<script type="text/javascript" src="js/.marker.js"></script>
<script>
map.addLayer(markerLayer);
И просто хотел сказать, что весь мой опыт создания этой карты был замечательным, я многому научился, и это главным образом из-за StackOverflow, у меня есть проблема, и я прихожу сюда и нахожу так много ресурсов, которые позволяют мне на самом деле узнать, что я я делаю неправильно Но эта проблема заставляет меня рвать на себе волосы!
Ваш get-data.php должен вернуть значение, которое вы получили из базы данных.
Это может быть сделано, например, используя echo:
$data = json_encode($datapulledfromDB);
echo $data;
Тогда вы можете, например, используйте код JavaScript, например:
<script type="text/javascript">
var result = null;
$.get("path/to/get-data.php", function(data) {
result = data;
});
</script>
Других решений пока нет …