gpt4 book ai didi

javascript - 使用带有数据库 javascript MySQL PHP 坐标的 google maps api 创建线

转载 作者:行者123 更新时间:2023-11-29 03:23:59 26 4
gpt4 key购买 nike

我想创建一个导航类型的应用程序,我必须在其中绘制一条线,其中起点和终点存储在数据库中。

线从起点开始到固定点(在代码中给出)并在终点终止。

在这里,我从数据库中获取数据并将其存储在矩阵($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]);”这一行遇到错误声明“undefined 不是一个对象(评估‘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++)

关于javascript - 使用带有数据库 javascript MySQL PHP 坐标的 google maps api 创建线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39288583/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com