我不知道如何编写 PHP 来配合我的 JSON JavaScript 代码。我假设我需要它将每一行解析为一个主数组,为主数组分配一个从 1 到无穷大的唯一值键。但是,老实说,我已经看过了,但我不知道该怎么做。另外,如果您发现映射添加标记有任何问题,请告诉我。
PHP代码:
<?php
include 'dbconnect.php';
$result = mysql_query("SELECT * FROM coords ORDER BY name DESC") or die ("Could
not query");
while($row = mysql_fetch_array($result)) {
$r[] = array(
"name" => $row['name'],
"lat" => $row['lat'],
"lng" => $row['lng'],
"speed" => $row['speed'],
"altitude" => $row['altitude'],
"distance" => $row['distance']
);
}
$encoded = json_encode($r);
echo $encoded;
exit($encoded);
mysql_close($conn);
?>
JAVASCRIPT代码:
var usermarker;
var markloc;
function deleteUserOverlay() {
if (usermarker) {
usermarker.setMap(null);
}
}
function calluserlocation(){
console.log('calluserlocation fires');
$.ajax( {
url: "getdata.php",
type: "GET",
dataType: "json",
success: function(data) { for (var i = 0; i < data.length; i++) { markloc = new google.maps.LatLng(data[i].b, data[i].c); adddata(markloc); } }, error: function(data) { console.log( "error" ); } });
console.log("sucessful run of function");
}
function adddata(markloc){
marker = new google.maps.Marker({
position: markloc,
icon: 'http://www.wolfdoginfo.net/app/cropcircles.png',
map: map
});
deleteUserOverlay();
usermarker = marker;
}
我在控制台中遇到错误,我爸爸现在输出这样
[{"name":"test2","lat":"39.8441792","lng":"-105.104921","speed":"bad","altitude":"dontcare","distance":"whatever" },{"name":"test","lat":"39.729431999999996","lng":"-104.831919","speed":"speed","altitude":"altitude","distance":"距离"},{"name":"grant3","lat":"39.729431999999996","lng":"-104.831919","speed":"speed","altitude":"altitude","distance":"距离"},{"name":"grant2","lat":"test34","lng":"test34","speed":"速度","高度":"高度","距离":"距离"},{"名称":"授予","纬度":"39.729431999999996","lng":"-104.831919","速度": "速度","高度":"高度","距离":"距离"},{"名称":"","纬度":"39.75198511","lng":"-104.85021166","速度": "速度","高度":"高度","距离":"距离"}][{"名称":"test2","纬度":"39.8441792","lng":"-105.104921","速度":"bad","altitude":"dontcare","distance":"whatever"},{"name":"test","lat":"39.729431999999996","lng":"-104.831919","speed":"speed","altitude":"altitude","distance":"distance"},{"name":"grant3","lat ":"39.729431999999996","lng":"-104.831919","speed":"speed","altitude":"altitude","distance":"distance"},{"name":"grant2"," lat":"test34","lng":"test34","speed":"speed","altitude":"altitude","distance":"distance"},{"name":"grant","纬度":"39.729431999999996","lng":"-104.831919","速度":"速度","高度":"高度","距离":"距离"},{"名称":"","纬度":"39.75198511","lng":"-104.85021166","速度":"速度","高度":"高度","距离":"距离"}]
所以现在我的 php 出于某种原因只正确输出了两次,但我的 json 代码不起作用。我需要为每个条目填充标记。
说:
[01:57:52.768] GET http://wolfdoginfo.net/app/show/getdata.php [HTTP/1.1 200 OK 86ms]
[01:57:52.705] "calluserlocation fires"
[01:57:52.705] "sucessful run of function"
[01:57:52.826] "error"