2011-05-10 82 views
0

我希望以这种方式使用谷歌地图: 用户放大他们想要的位置(使用pan &缩放或地图上方的搜索栏),并且地图中心的坐标向下传递到我的PHP脚本作为“$ lat”&“$ lon”或“$ coords”。如果有人可以找到或写一些代码,那么我会很高兴...让我知道是否需要更多信息...我对JavaScript(甚至PHP)的理解有限,请尽量与你一样完整可以:)谷歌地图 - 提取地图中心的坐标?

回答

1

所以,这将是有问题的(并且几乎不可能),因为PHP代码在服务器端执行,在页面完成加载到客户端的浏览器之前。当用户在浏览器中执行操作时,Javascript会“实时”执行,所以实际上并不是一种从JS推送到PHP的简单方法。

要正确答案,我们需要知道你想要的坐标数据做什么,在哪里,这是整个“框架”,在您的应用程序,当然这样的问题:

  • 用户是否选择一个位置,然后发送给你,就是这样?
  • 他们是否会一个接一个地挑选几个位置(例如“我最喜欢的地方”)
  • 您可以写入数据库并在完成后处理位置吗?

你有几个选项(有序简单到最难)

  1. 让用户平移/缩放地图,以他们想要的点,然后单击一些按钮,在这一点上,拉的坐标从地图推送到一些PHP脚本(通过GET或POST)
  2. 写入数据库 - 并包含一个“完成”按钮,它启动一个PHP脚本来处理数据。
  3. 让用户在地图上移动,当他们完成移动时,启动一个小计时器并刷新页面,如果他们在该位置持续X时间。刷新页面时,将坐标传递回同一页面(通过GET或POST)。当你在PHP中得到它,做任何你需要的数据(和recenter在坐标图。这将是从用户的角度来看,很烦人。

既然你这么问,你可以得到地图的中心通过做的位置map.getCenter(),它返回一个纬度/经度对

+0

感谢您的回应!:)我瞄准的选项确实是最简单的(#1)。我不确定是否有可能完成这项工作,所以我没有打算在我的网站上设置代码,但我目前正在创建一个名为“ID”和“名称”都是“城市”的列表,其中包含