反向地理编码不返回邮政编码

时间:2016-07-09 14:10:19

标签: javascript mysql html5 google-maps geolocation

我正在尝试将HTML5地理位置功能与一些谷歌地图API一起用于移动网络应用,如下所示......

我有一个MYSQL表,它包含属性的地址记录,包括邮政编码,但没有坐标。我成功使用HTML5 Geolocation来使用此代码获取当前坐标...

<script>
window.onload = function getLocation() {
    if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(showPosition, showError);

    } else {
        x.innerHTML = "Geolocation is not supported by this browser.";
    }
}

function showPosition(position) {
    var latlng = position.coords.latitude + "," + position.coords.longitude;
    var lat = position.coords.latitude;
    var lng = position.coords.longitude;
}

function showError(error) {
    switch(error.code) {
        case error.PERMISSION_DENIED:
            x.innerHTML = "User denied the request for Geolocation."
            break;
        case error.POSITION_UNAVAILABLE:
            x.innerHTML = "Location information is unavailable."
            break;
        case error.TIMEOUT:
            x.innerHTML = "The request to get user location timed out."
            break;
        case error.UNKNOWN_ERROR:
            x.innerHTML = "An unknown error occurred."
            break;
    }
}
</script>

...数据库表很大,我想限制邮政编码查询的结果,所以我需要做一些反向地理编码,将我当前的latlng转换成邮政编码来提供我的查询。

使用&rbsp;&#39;中返回的corodinates&#39;在我的家庭住址测试,然后我测试了这个&#39; latlng&#39;在谷歌开发示例中的反向地理编码示例https://developers.google.com/maps/documentation/javascript/examples/geocoding-reverse,但它只返回城镇,国家&#39;并没有邮政编码。有没有办法让我每次都能获得邮政编码,或者找到最近的邮政编码?

然后我想创建我的SQL,例如&#34; SELECT * FROM tblProperties WHERE tblProperties.postCode =&#39; geocodingPostalCode&#39;;&#34;

我已经使用其他随机坐标测试了go go dev示例,这些坐标确实返回完整地址,包括邮政编码而不是我的家庭地址,我需要它一直工作。

任何帮助非常感谢。谢谢。

1 个答案:

答案 0 :(得分:0)

您用于反向地理编码的示例使用第二个结果,对于邮政编码可能是广泛的。你不一定总是得到一个邮政编码,但第一个结果(结果[0],而不是结果[1])更有可能有邮政编码。