![](/img/trans.png)
[英]Load Heatmap LatLng Coordinates Google Maps API from MySQL database
[英]Creating lines using google maps api with coordinates from database javascript MySQL PHP
我想创建一个导航类型的应用程序,其中我必须画一条线,其中起点和终点存储在数据库中。
这些线从起点开始到固定点(以代码给出),然后在终点处终止。
在这里,我从数据库中获取数据并将其存储在矩阵($ locations)中。 连接正确,数据也存储在矩阵中。
<?php
$result = mysqli_query($bd,"SELECT * FROM ship WHERE id=".$id);
$locations = array();
while($row = mysqli_fetch_array($result)) {
array_push($locations, $row);
}
$nrows = mysqli_num_rows($result);
?>
这是为JavaScript创建2个变量
var nrows = <?php echo json_encode($nrows,JSON_NUMERIC_CHECK);?>;
var locMatrix = <?php echo json_encode($locations,JSON_NUMERIC_CHECK);?>;
我创建了另一个数组DrivePath,它有助于设置坐标和创建线。
for(var i=1; i<=nrows; i++)
{
console.log(locMatrix[i][0]);
DrivePath.push(new google.maps.LatLng(locMatrix[i][0], locMatrix[i][1]),
new google.maps.LatLng(17.8674, 66.543),
new google.maps.LatLng(locMatrix[i][2], locMatrix[i][3]));
}
在这里,我在“ console.log(locMatrix [i] [0]);”行遇到错误。 声明“未定义不是对象(评估'locMatrix [i]')””
完整的代码在这里
https://jsfiddle.net/Prashant_mahajan/u5Lz9jqs/
希望我的错误会尽快得到解决。
您的问题可能就是这个。 Javascript数组的索引为零,因此说您在LocMatrix中有5行,要遍历它们,您需要从locMatrix [0]转到locMatrix [4]
你知道你有nrows
行。 但是,当您确实需要从0循环到nrows-1时,您将从1循环到nrows。
它可能从第二行到最后一行一直循环,然后尝试在另一行上进行另一次迭代,这比locMatrix中的迭代多。
尝试
for(var i=0; i < nrows-1; i++)
要不就
for(var i=0; i < locMatrix.length; i++)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.