javascript - 如何在传单 map 上显示SQL查询

标签 javascript php json leaflet

我的传单 map 有问题,我想显示 SQL 查询,但它不起作用。我将结果放入 JS 变量中,如下所示:

<?php

 $connect = connect();
 $req_ch = "SELECT json_build_object(
   'type', 'FeatureCollection',
   'crs',  json_build_object(
       'type',      'name',
       'properties', json_build_object(
       'name', 'EPSG:4326')),
   'features', json_agg(
       json_build_object(
           'type',       'Feature',
           'geometry',   ST_AsGeoJSON(geom)::json,
           'properties', json_build_object(
               'name', code_chambre,
               'sro', zone_sro
           )
       )
   )
 ) AS objet_geosjon FROM tvx_chambres;";

 $result_ch = pg_query($connect, $req_ch);

 $rs_ch = pg_fetch_array($result_ch);

 $geo_ch = $rs_ch[0];

 ?>

var g_ch = <?php echo $geo_ch;?>;


然后我尝试使用以下查询显示它:

$.getJSON(g_ch, function(data) {
    var geojson = L.geoJson(data, {
        onEachFeature: function (feature, layer) {
            layer.bindPopup(feature.properties.name);
        }
    });
    var map = L.map().fitBounds(geojson.getBounds());
    geojson.addTo(map);
});

我使用了console.log(g_ch),我在浏览器控制台上看到了我的geoJson,并且没有错误。 您知道我可以做些什么来解决我的问题吗?

最佳答案

如果 g_ch 已经是一个对象,则

$.getJSON(g_ch... 没有任何意义。$.getJSON 排除 URL 作为第一个参数,这样它就可以从服务器获取一些 JSON 数据 - 请参阅 https://api.jquery.com/jQuery.getJSON 了解这一点。

由于您已经将 JSON 作为对象文字回显到 g_ch JavaScript 变量中,因此您可以直接在代码中使用此变量。我具体不知道 geoJson 函数,但我希望您需要执行类似的操作

var geojson = L.geojson(g_ch... 

(当然,还要删除所有 $.getJSON 内容。)

关于javascript - 如何在传单 map 上显示SQL查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60336723/

相关文章:

javascript - 无法正确更改 Pacman Tilemap

javascript - React-Native,从数据库中保留新行 "\n"

php - 通过 PHP 在 WordPress 中获取 jQuery 版本

java - org.springframework.http.converter.HttpMessageNotWritableException : Could not write JSON: Specified map is empty

json - 设置 package.json 默认值

javascript - JavaScript 中的装饰函数

javascript - javascript 对象键是否区分大小写?

php - 有没有一种简单的方法(在 PhpStorm 中)将 PHP 代码片段包装在 PHPDoc 中?

javascript - 将新变量添加到 Prestashop Cart 对象

java - 如何解析从 Google 的图像搜索 API 返回的这个 JSON 字符串?