[英]How to load data from pgAdminIII with PHP and ajax into a leaflet map?
我有三個下拉菜單,用戶可以在其中選擇表,字段和屬性。 我使用了從下拉列表中選擇的結果進行查詢。 但是現在我想在傳單地圖上找到它,但我不知道如何。
這是我的getData.php代碼:
<?php
include "connect.php";
$table = $_GET['tableSelected'];
$field = $_GET['fieldSelected'];
$attribute = $_GET['attributeSelected'];
$sql = "SELECT $fieldstr
FROM $table l" ;
WHERE $field = $attribute";
if (!$response = pg_query($conn, $sql)) {
echo "A query error occured.\n";
exit;
}
while ($row = pg_fetch_row($response)) {
foreach ($row as $i => $attr){
echo $attr.", ";
}
echo ";";
}
?>
這是我的main.js代碼:
$('#slctTable, #slctField, #slctAttribute').change(function ()
{
var tableSelected = document.getElementById("slctTable").value;
var fieldSelected = document.getElementById("slctField").value;
var attributeSelected = document.getElementById("slctAttribute").value;
$.ajax({
"url": "php/getData.php",
"type": "GET",
"data": {
tableSelected: tableSelected,
fieldSelected: fieldSelected,
attributeSelected: attributeSelected
}
})
});
//Initalise map
$(document).ready(initialize);
function initialize(){
$("#map").height($(window).height());
map = L.map("map", {
center: L.latLng(53.21587, 6.556676 ),
zoom: 12
});
var tileLayer = L.tileLayer("http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png").addTo(map);
};
更新
移動你的change
監聽到你的initialize
(所以它可以工作map
.....添加success
功能,您的AJAX選項 ,如下面。
$.ajax({
"url": "php/getData.php",
"type": "GET",
"data": {
tableSelected: tableSelected,
fieldSelected: fieldSelected,
attributeSelected: attributeSelected
},
'success': function(data) {
//perform data transformation to a leaflet compatible format
///then map.addLayer(transformedStuff)
}
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.