0

在这个谷歌教程中;https://developers.google.com/maps/articles/phpsqlajax_v3在“加载 XML 文件”部分中讨论了一个名为“downloadUrl”的函数。它说“url 指定 XML 文件或生成文件的 PHP 脚本的路径,具体取决于您是否希望在数据库更改时动态更新 XML。通常最简单的方法是将其与HTML,以便您可以通过文件名来引用它。” 问题是,如果我使用将 php url 放入函数中它不起作用。如果我直接链接到它的 xml 文件。例如,此调用不会将标记放在地图上。

downloadUrl('SCOTAxml.php?lat=39.4&lng=-94.6&dist=100', function(data) { ...

但是,此调用确实有效。

downloadUrl("testxml.xml", function(data) { ...

我使用 SCOTAxml.php 程序完全按照教程中的操作创建 xml。我只是将它复制到 testxml.xml afterword 以测试 downloadUrl 功能。

如果您还没有猜到,我的问题是为什么不能按照教程所说的方式正常工作?

想法?要检查的东西?一个解法?

提前感谢所有帮助解决这些简单问题的伟大人物。

4

1 回答 1

0

我下载了教程,但由于地图图标而无法正确加载。他们的链接已经失效。您需要下载自己的图标。地图中使用的图标可以从Visual Case中通过点击保存获得。

var customIcons = {
      restaurant: {
        icon: 'icons/restaurant.png',
        shadow: 'icons/restaurant_shadow.png'
      },
      bar: {
        icon: 'icons/bar.png',
        shadow: 'icons/bar_shadow.png'
      }
    };

正如评论检查您正在从SCOTAxml.php.

编辑

这是从教程生成的 XML 文件,如浏览器中所示。

<markers>
<marker name="Frankie Johnnie & Luigo Too" address="939 W El Camino Real, Mountain View, CA" lat="37.386337" lng="-122.085823" type="bar"/>
<marker name="Amici's East Coast Pizzeria" address="790 Castro St, Mountain View, CA" lat="37.387138" lng="-122.083237" type="restaurant"/>
</markers>

我注意到您传递的参数(纬度、经度和距离)在phpsqlajax_genxml.php. 这将向我表明您正在将教程创建商店定位器与您上面指出的教程混合使用。

地图

编辑 2

要从 PHP 文件输出 XML 内容,必须设置 content-type 标头。这是为了让浏览器知道 PHP 文件的输出内容是 XML,而不是默认的内容类型标头 (text/html)。

//Set content-type header for XML 
header("Content-type: text/xml");

编辑 3 visual-case 上的图标页面已移至此处:http ://www.lass.it/Web/viewer.aspx?id=4

于 2013-01-11T21:31:01.637 回答