【发布时间】:2011-11-03 15:14:25
【问题描述】:
关于谷歌地图和存储/检索坐标的小问题。我在 MySql 上运行一个数据库,将点的经度/纬度存储在 2 个单独的浮点字段中。我想执行查询以找到适合给定谷歌地图对象边界的点。
我从当前的谷歌地图获取最小/最大 lng/lat 并通过 PHP 执行查询。一切正常,除非我对经度有负值。当存在适合最小/最大 lng 的值时,它不会返回任何结果...我的查询如下所示:
SELECT * FROM points WHERE ((lng BETWEEN :lng_min AND :lng_max) AND (lat BETWEEN :lat_min AND :lat_max))
我检查了发送到查询/存储在数据库中的每个变量,每个变量都是有效的浮点数。这似乎没有任何意义。我错过了什么吗?
【问题讨论】:
-
冒号是干什么用的?你不能跳过它们吗?
-
使用 PDO?您的数据库记录查询?我会检查并确保正在运行的查询是您所期望的。尝试运行您认为作为查询发送到数据库的内容,看看结果是否是您想要的。
标签: php sql google-maps geolocation latitude-longitude