2009-11-24 63 views
0

这是网站上的搜索工具。我已经使用标准的Google Maps地理编码器工作,但由于某种奇怪的原因,它似乎只在邮编的第一部分进行搜索。将全英国的邮政编码在服务器端脚本中的坐标(GlocalSearch的服务器端版本?)

It can be done使用GlocalSearch客户端JS。但是,如何将其转换为服务器端解决方案尚不清楚。

这里是我目前所面对的一个简化版本:

<?php 
$requestURL = "http://maps.google.co.uk/maps/geo?output=csv&key=$apiKey&gl=uk&q=" 
    . urlencode($_GET['pc']); 
echo file_get_contents($requestURL); 
?> 

尝试,例如,DE1 2PQ和DE1 3NF(放入测试您的API密钥)。两个报告都有相同的坐标。

任何想法?

+0

看到这个问题,谷歌的英国数据的解释:http://stackoverflow.com/questions/1748785/why-does-the-google-geocoder-give-different-results-from-the-map-search/ 1750638#1750638 – 2009-11-24 16:35:33

回答

1

我发现最终的答案。 Google提供对非JS应用程序Ajax API底层服务器端脚本的访问,因此我只需要按照Google网站上的instructionsreference。本地搜索是这里的一个关联。

0

英国测绘数据是昂贵的,它可能是谷歌只有一个许可证的代码的第一部分更高级别的邮政编码数据(总面积),而不是完整的街道级别的位置。

编辑:
或者他们可能有一个不可分配的许可证的确切数据。但大规模的数据是免费提供的。

,为什么你应该支付的公有邮局公开数据,从而使他们的工作更容易,甚至不太清楚。

+0

那么如何GlocalSearch和谷歌地图网站本身​​解决它? – Stewart 2009-11-24 16:42:18

+0

@Stewart - Google的许可证允许他们搜索,但不允许他们重新发布。 – 2009-11-24 16:50:28

+0

但第三方在其网站上放置了一些代码,要求谷歌“这个邮编在哪里?”仍然只是搜索它,而不是重新分配它。那么用它做什么?此外,GlocalSearch已经是任何人都可以在网站上使用的东西,为什么同等的服务器端代码应该有什么不同呢? – Stewart 2009-11-24 17:02:39