我正在尝试在我的新项目上绘制地图特征上的点,但我遇到了问题。
到目前为止,这是我的代码选择代码:
$latest = mysql_query("SELECT * FROM `database` WHERE `id` = '887584' ORDER BY `id` DESC LIMIT 0,100") or die(mysql_error());
while ($lat = mysql_fetch_array($latest)) {
// Missing Part
}
我要做的是使用这个数组绘制地图的坐标:
$coordinates = array (
"$lat[lat]|$lat[long]", "$lat[lat]|$lat[long]", "$lat[lat]|$lat[long]",
);
但我不知道如何使用php重复数据库中的坐标。
有人可以帮忙吗?
答案 0 :(得分:4)
$coordinates = array();
$latest = mysql_query("
SELECT
`lat`
,`long`
FROM
`database`
WHERE
`id` = '887584'
ORDER BY
`id` DESC
LIMIT 0,100
") or die(mysql_error());
while ($row = mysql_fetch_assoc($latest)) {
$coordinates[] = implode('|', array($row['lat'], $row['long'])); // Could be
// shortened to implode('|', $row), but if you select more fields
// in the future it will likely break your app.
}
答案 1 :(得分:0)
我不太确定你要求的是什么,但看起来你已经或多或少地写了代码。我想这就是你想要的:
$coordinates = array();
$query = mysql_query("SELECT `lat`, `long` FROM `database` WHERE `id` = '887584' ORDER BY `id` DESC LIMIT 0,100") or die(mysql_error());
while ($row = mysql_fetch_assoc($query)) {
$coordinates[] = $row['lat'] . "|" . $row['long'];
}
顺便说一下,如果`database`.`id`
是主键和/或唯一,那么您不需要查询的ORDER和LIMIT部分。