javascript - 从 SQL 数据库为 map 生成 Javascript 文件

标签 javascript php mysql ajax leaflet

我正在制作一张包含大量标记的 Leaflet map 。为了更轻松地更新 map ,我将所有标记都存储在 MySQL 数据库中。我有一个 php 文件,它提取数据并将其放入 javascript 可以读取的形式,然后将其分配给一个变量。

问题: 然后我想使用某种方法(从我一直在阅读的内容来看,AJAX 是最安全和最好的方法)从 php 文件中提取变量并将其提供给 .js 文件以供使用。

我已经阅读了许多关于如何执行此操作的不同问题,但我似乎无法准确理解我是如何使用 AJAX 来提取变量的。 我不知道如何在 Ajax 中执行此操作。

以下是我正在尝试做的一些代码示例:

获取数据.php

//do some php stuff here to pull data
$data = json_encode($datapulledfromDB);

标记.js

//do some ajax here to pull $data

//now here's my javascript that then uses $data
markerLayer = L.geojson(data, {
//e.t.c.

map 索引.php

<script type="text/javascript" src="js/.marker.js"></script>

<script>
map.addLayer(markerLayer);

我只是想说,我创建这张 map 的整个经历非常棒,我学到了很多,这主要是因为 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>

关于javascript - 从 SQL 数据库为 map 生成 Javascript 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31614513/

相关文章:

javascript - 暂停执行代码,直到异步函数返回所需的值

javascript - 处理表单时显示图像时出错

php - 将最新帖子置于顶部(按时间倒序排列)

php - 正则表达式工作不正常

Mysql 找出每位车手最长连续获胜次数是多少

javascript - 如果我根据前 3 个 id 选择 1 或 2 或 3,则应禁用其他 3 个复选框,我的 div 中有五个 6 复选框,我的意思是 4,5 和 6

javascript - jQuery 函数适用于本地主机,但不适用于网络

javascript - JQuery Post 错误 react

mySQL 组,最新

mysql - 多种类型用户的数据库