【问题标题】:HTML5/JS geolocation show only posts from a certain radiusHTML5/JS 地理位置仅显示来自特定半径的帖子
【发布时间】:2015-07-07 06:51:20
【问题描述】:

嘿,我真的很想在互联网上搜索任何小技巧来解决我的困境,但是我仍然没有找到任何关于它的东西,我为寻求烦人的帮助而感到难过,但我真的不知道 javascript,但它需要。

所以基本上,我在制作这个东西,它要求用户提供地理位置,然后它只会显示某个半径(5-10 英里)内的用户发布的帖子。这需要将位置存储在数据库中吗?或者这会是我不知道的事情吗?

所有帮助将不胜感激,并在此先感谢:)

【问题讨论】:

  • 您想在哪里显示这些帖子?听起来他们可能在数据库中,并且您想过滤从数据库返回的帖子,但听起来不太可能是 JS 问题。如果这是正确的,那么您是否有存储在数据库中的每个帖子的地理位置?
  • 好吧,我想这不是一个 JS 问题,但我很困惑如果这个人在帖子位置的半径范围内,我如何控制谁能看到它,有点 yik-yakish

标签: javascript html geolocation radius


【解决方案1】:

不幸的是,我不知道您网站的后端有什么,但我相信如果您使用 MySQL 并且将每个帖子的地理位置存储在数据库中,这应该可以工作。如果是其他类型的数据库,那么这可能会略有不同。

SELECT *, ( 3960 * acos( cos( radians( @custLat ) ) *
  cos( radians( Lat ) ) * cos( radians(  Lng  ) - radians( @custLng ) ) +
  sin( radians( @custLat ) ) * sin( radians(  Lat  ) ) ) ) AS Distance
FROM Posts
WHERE Distance < 10

其中@custLat 和@custLng 是用户的变量坐标。 Lat 和 Lng 是我们存储帖子坐标的数据库表的字段。

更多细节在https://www.stormconsultancy.co.uk/blog/development/code-snippets/the-haversine-formula-in-c-and-sql/

注意:我没有测试过这个。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-17
    • 1970-01-01
    • 2018-12-29
    相关资源
    最近更新 更多