Php 使用codeigniter google-maps-api-v3-library进行邮政编码搜索

Php 使用codeigniter google-maps-api-v3-library进行邮政编码搜索,php,mysql,codeigniter,search,google-maps-api-3,Php,Mysql,Codeigniter,Search,Google Maps Api 3,我为codeigniter使用了很棒的库。 我有一个网站()当用户第一次访问页面时,他们必须填写他们的邮政编码和半径。(这还没有起到任何作用)。 邮政编码和半径保存为cookie,并显示在搜索栏的主页上 我还将工厂存储在数据库的一个表中 该表如下所示: factories --------- idfactories factoryname address postcode city website email ... ... 如何根据表中存储的邮政编码搜索工厂 希望有点清楚我想做什么。地图AP

我为codeigniter使用了很棒的库。 我有一个网站()当用户第一次访问页面时,他们必须填写他们的邮政编码和半径。(这还没有起到任何作用)。 邮政编码和半径保存为cookie,并显示在搜索栏的主页上

我还将工厂存储在数据库的一个表中

该表如下所示:

factories
---------
idfactories
factoryname
address
postcode
city
website
email
...
...
如何根据表中存储的邮政编码搜索工厂


希望有点清楚我想做什么。

地图API不支持本地邮政编码。你需要做一些事情,比如绘制所有工厂的纬度和经度,然后进行半径搜索。在标记的重复文章中,有一个示例显示了圆/半径搜索的工作原理-只需使用工厂更改其中的位置数组

function createRadius(dist) {
    var myCircle = new google.maps.Circle({
        center: markerArray[markerArray.length - 1].getPosition(),
        map: map,
        radius: dist,
        strokeColor: "#FF0000",
        strokeOpacity: 0.8,
        strokeWeight: 2,
        fillColor: "#FF0000",
        fillOpacity: 0.35
    });
    var myBounds = myCircle.getBounds();

    //filters markers
    for(var i=markerArray.length;i--;){
         if(!myBounds.contains(markerArray[i].getPosition()))
             markerArray[i].setMap(null);
    }
    map.setCenter(markerArray[markerArray.length - 1].getPosition());
    map.setZoom(map.getZoom()+1);
}

可能是重复的不,不是。这个问题比我的问题要远得多。我只是想知道我问了什么。谢谢。但是我用这个api做了很多尝试,但它不能满足我的需要。我想我只需要下载一个带有邮政编码及其lat/long的数据库,然后在mysql中使用距离查询。无论如何,谢谢。用pro6pp修复了它,一个带有多个api的邮政编码数据库。所以我不再需要这个了