我正在尝试实施恢复社区会议发现者。我有一个数据库和地图设置。我正在尝试添加一个变量来显示当前日期的会议,这也是基于“最近”的位置优先级。如何在我的数据库中获取今天的日期变量,以便有选择地仅显示当天的会议?我正在使用谷歌地图api。
谢谢,
特里
答案 0 :(得分:0)
在您的数据库中,您有一个日期时间字段,用于存储我猜测的会议的日期和时间。
当您从数据库中提取信息以放入地图时,只需使用任何适当的sql语言来选择那些与您需要的日期匹配的记录。
这实际上更像是一个SQL问题。
可能无法满足最近的位置,但您需要做的也是一个SQL问题。您需要将lat和long字段添加到数据库并存储每个会议位置的纬度/经度。
然后你可以在拥有这些和用户的纬度/经度之后进行基于距离的SQL搜索。
地图根本不会进入选择过程。
... 编辑。
按时间选择相当简单,但我想我会分享基于距离的sql SELECT我曾经使用过一段时间。注意。它与MySQL一起使用,但我认为它几乎适用于任何sql db。
"SELECT name, tel, (((acos(sin((".$latitude."*pi()/180)) * sin((`latitude`*pi()/180))+cos((".$latitude."*pi()/180)) * cos((`latitude`*pi()/180)) * cos(((".$longitude."- `longitude`)*pi()/180))))*180/pi())*60*1.1515) AS distance FROM takeaway WHERE active AND (((acos(sin((".$latitude."*pi()/180)) * sin((`latitude`*pi()/180))+cos((".$latitude."*pi()/180)) * cos((`latitude`*pi()/180)) * cos(((".$longitude."- `longitude`)*pi()/180))))*180/pi())*60*1.1515) < 10 AND tel AND type = 'transport/taxi' ORDER BY distance LIMIT 5"
这为您提供了编辑和重用的基础知识。只需记住将时间/日期检查添加到最终字符串中。