我可以从 mySQL 中使用纬度和纬度检索谷歌地图坐标吗? lng 一起在一个列中吗?

发布于 2024-12-29 20:23:52 字数 354 浏览 1 评论 0原文

通常人们在 mySQL 中创建两列,称为纬度和经度来存储和检索点的坐标。但是,我的应用程序检索整个纬度和经度坐标并将它们仅插入到 1 列中。

显示示例: (1.372442, 103.94954699999994)

是否可以将我的数据库列插入到如下位置?或者任何我能做到的方式。

var marker = new google.maps.Marker({
position: new google.maps.LatLng(<?php echo $location['locationOne']),
map: map,
}); 

谷歌地图可以承认这一点并检索点并根据我的示例绘制出来吗?谢谢

Normally people created 2 column in mySQL called latitude and longitude to store and retrieve the coordinates of the points. However, my app retrieves the whole latitude and longitude coordinates and insert them into only 1 column.

Example shown: (1.372442, 103.94954699999994)

Is it possible to insert my database column into the position like below ? or any way I could do it.

var marker = new google.maps.Marker({
position: new google.maps.LatLng(<?php echo $location['locationOne']),
map: map,
}); 

Can the google map acknowledge this and retrieve the points and plot out according to my example ? Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

孤寂小茶 2025-01-05 20:23:52

您不需要需要拆分 - 只要您的服务器端代码生成有效的 javascript - 用户浏览器就会解析它。 javascript 在函数调用中使用逗号来分隔变量。

从您的示例来看,它似乎已经在提供的值上包含了括号,因此您不需要硬编码的值。

position: new google.maps.LatLng<?php echo $location['locationOne']; ?>,

但是您可能需要对 locationOne 内的值进行一些验证 - 否则您可能会生成无效的 javascript,这最多只会向用户提供一条神秘的错误消息。不好。

You don't need to split - as long as your server side code produces valid javascript - the users browser will parse it. It so happens javascript uses commas to seperate variables in a function call.

From your example, it appears it already has brackets on the provided values, so you dont need the hardcoded ones.

position: new google.maps.LatLng<?php echo $location['locationOne']; ?>,

But you may want to do some validation, on the value inside locationOne - otherwise you liable to produce invalid javascript, which will at best give a cryptic error message to the user. Not good.

镜花水月 2025-01-05 20:23:52

您需要将该列拆分为两个单独的值以创建谷歌地图 LatLng 对象。

You will need to split the column into two separate values to create a google maps LatLng object.

叹倦 2025-01-05 20:23:52

您可以在服务器端使用 PHP 拆分列,也可以在客户端使用 JavaScript 拆分列。下面是 JavaScript 代码示例:

var latlng = "<?php echo $location['locationOne'] ?>".split(",");
var marker = new google.maps.Marker({
  position: new google.maps.LatLng(latlng[0], latlng[1]),
  map: map,
}); 

You can either split the column up on the server side with PHP or on the client side in JavaScript. Here's sample JavaScript code:

var latlng = "<?php echo $location['locationOne'] ?>".split(",");
var marker = new google.maps.Marker({
  position: new google.maps.LatLng(latlng[0], latlng[1]),
  map: map,
}); 
灯下孤影 2025-01-05 20:23:52

您可以保留数据库中的值,带或不带逗号。如果 Google 地图不喜欢它,那么您可以使用 PHP 和 JavaScript 函数添加或删除它。 JavaScript = 替换(); PHP = str_replace();

如果您要按数据过滤地图,则最好将数据“缓存”在 JSON 中以供检索,这使得地图加载速度更快。祝你好运!

You can keep your values as they are in the database with or without commas. If Google maps doesn't like it, then you can either add it or remove it using PHP and JavaScript functions. JavaScript = replace(); and PHP = str_replace();

If you are filtering your maps by data it would be behove of you to "cache" the data in a JSON for retrieval, this makes the maps load much quicker. Good luck!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文