В вашем PHP-скрипте нет ничего плохого, но код, показанный на странице Google , на самом деле содержит ошибки.В загружаемом примере здесь ошибок нет.
Проблема в том, что страница на странице Google использует ошибочный синтаксис для доступа к элементам массива:
var name = markers[[]i].getAttribute("name");
var address = markers[[]i].getAttribute("address");
var type = markers[[]i].getAttribute("type");
var point = new google.maps.LatLng(
parseFloat(markers[[]i].getAttribute("lat")),
parseFloat(markers[[]i].getAttribute("lng")));
var html = "<b>" + name + "</b> <br/>" + address;
var icon = customIcons[[]type] || {};
Правильный код:
var name = markers[i].getAttribute("name");
var address = markers[i].getAttribute("address");
var type = markers[i].getAttribute("type");
var point = new google.maps.LatLng(
parseFloat(markers[i].getAttribute("lat")),
parseFloat(markers[i].getAttribute("lng")));
var html = "<b>" + name + "</b> <br/>" + address;
var icon = customIcons[type] || {};
Отчеты Firebug:
Line 34: missing ] in index expression:
var name = markers[[]i].getAttribute("name");
, что на самом деле было более полезным, чем отчет об ошибках синтаксиса Chrome.Поскольку ваш метод load (), таким образом, содержит ошибку, весь метод не может быть интерпретирован и поэтому не существует, что объясняет вторую полученную ошибку.