商店定位器使用谷歌地图API和没有数据库

Store locator using Google Maps API and no database?

本文关键字:数据库 API 谷歌地图 定位器      更新时间:2023-09-26

有没有商店定位器使用Google API v3而不使用数据库的例子?我在谷歌上能找到的所有教程都是关于v2(谷歌说不推荐使用)、php(我们使用python)和mySQL(我们使用SQLite)的。

我以前从未制作过商店定位器,但我认为谷歌会设置它,这样你就可以列出地址,谷歌会把这个片段吐出来粘贴到你的网站上。我知道,太天真了。

我已经把地图做好了,但我不知道如何添加位置、显示位置,或者允许用户输入zip并找到附近的位置。现在我们只有三个位置,所以我希望找到一个解决方案,放弃数据库部分,让我直接在Google js中指定这些lat/long。我不介意它在页面加载上加载所有三个位置。

因此,如果你知道一种直接在Google v3代码段中指定位置的方法,请告诉我。如果你知道如何在侧边栏中显示这些商店的详细信息和输入zip的位置,请也分享一下,我将不胜感激。

谢谢。

看看Fusion Tables。这是做你想做的事的理想方式。

http://www.google.com/fusiontables/Home/

在v3中应该可以使用以下方法来将地图集中在用户lat/lng上,并在商店位置绘制标记:

                  var node_marker_image = new google.maps.MarkerImage('PATH_TO_YOUR_CUSTOM_MARKER_IMAGE',
                            new google.maps.Size(15, 26),
                            new google.maps.Point(0, 0),
                            new google.maps.Point(8, 26)
                  ); // adjust point parameters as needed
                  var shadow = new google.maps.MarkerImage('PATH_TO_YOUR_CUSTOM_MARKER_SHADOW',
                            new google.maps.Size(22, 26),
                            new google.maps.Point(0, 0),
                            new google.maps.Point(2, 26)
                  ); // adjust as needed
                  var user_position = new google.maps.LatLng(USERLAT, USERLNG);
                  var myOptions = {
                        zoom: 8,
                        center: user_position,
                        mapTypeId: google.maps.MapTypeId.ROADMAP
                  };
                  var map = new google.maps.Map(document.getElementById('mapCanvas'), myOptions);
                  var store_marker = new google.maps.Marker({
                                    position: new google.maps.LatLng(YOURLAT, YOURLNG),
                                    map: map,
                                    icon: node_marker_image, 
                                    shadow: shadow
                  });

如果您不想使用DB,可以使用JSON字符串来表示您的商店位置,并将其解析为某种位置对象。至于"最近"的商店功能——由您来决定如何关联邮政编码。Zipcode可能相当复杂,通常不遵循你可能认为合理的地理边界。美国人口普查数据可以作为zip信息的良好来源。听起来你的要求相当简单,所以你可以在查找表中为你可能需要担心的每个zip分配一个中心地理位置(或者,再一次,一个JSON字符串)。然后,您可以使用google.maps.geometry.spherical.computeDistanceBetween()方法来计算感兴趣的邮政编码中心和您的商店位置之间的距离。

我已经构建了大约15-20个这样的。。。但你的问题还有很多。你需要把任务分解。

简而言之:请检查以下内容的来源:https://google-developers.appspot.com/maps/documentation/javascript/examples/infowindow-simple

找到他们插入标记的地方,然后从那里开始工作。。。我就是这么开始的,你可以在很短的时间内准备好基本地图。