Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript google地图类型错误:xml未定义_Javascript_Php_Mysql_Google Maps_Mysqli - Fatal编程技术网

Javascript google地图类型错误:xml未定义

Javascript google地图类型错误:xml未定义,javascript,php,mysql,google-maps,mysqli,Javascript,Php,Mysql,Google Maps,Mysqli,我目前正在开发一个使用GoogleMaps和ajax的web应用程序。我对这两项技术都是新手,所以我不确定我做的事情是否正确。我按照有关如何在上创建一个的说明进行操作。下面是我的代码片段: function searchNearLocations(radius){ var searchUrl = './designIncludes/phpLogicIncludes/searchMarkers.php?lat=' + myLat +'&lng=' + myLng + '&a

我目前正在开发一个使用GoogleMaps和ajax的web应用程序。我对这两项技术都是新手,所以我不确定我做的事情是否正确。我按照有关如何在上创建一个的说明进行操作。下面是我的代码片段:

function searchNearLocations(radius){
        var searchUrl = './designIncludes/phpLogicIncludes/searchMarkers.php?lat=' + myLat +'&lng=' + myLng + '&radius=' + radius;
        downloadUrl(searchUrl, function(data) {
            var xml = parseXml(data);
            var markerNodes = xml.documentElement.getElementsByTagName("marker");
            var bounds = new googlemaps.LatLngBounds();
            for (var i = 0; markerNodes.Length; i ++){
                var name = markerNodes[i].getAttribute("name");
                var address = markerNodes[i].getAttribute("address");
                var info = markerNodes[i].getAttribute("info");
                var tts = markerNode[i].getAttribute("tts");
                var slatlng = new google.maps.LatLng(
                    parseFloat(markerNodes[i].getAttribute("lat")),
                    parseFloat(markerNodes[i].getAttribute("lang")));

                createOption(name,distance,i);
                createMarker(latlng,name,address);
                bounds.extend(latlng);
            }
        map.fitBounds(bounds);              
        });
    };

function createMarker(slatlng,name,address,info,tts){
    var html = "<b>" + name + "</b></br><u>" + address + "</u></br>" + info + "</br>" + "Time allowance to spend: " + tts;
    var marker = new google.maps.Marker({
        map:map,
        position:slatlng
    });
    google.maps.event.addListener(marker,'click',function(){
        infoWindow.setContent(html);
        infoWindow.open(map,marker);
    });
    markers.push(marker);
};

function downloadUrl(url,callback){
    var request = window.ActiveXObject ?
        new ActiveXObject('Microsoft.XMLHTTP') : 
        new XMLHttpRequest;

    request.onreadystatechange = function() {
        if(request.readyState == 4){
            request.onreadystatechange = doNothing;
            callback(request.responseText, request.status);
        }
    };
    request.open('GET',url,true);
    request.send(null);     
};

function parseXml(str){
    if (window.ActiveXObject){
        var doc = new ActiveXObject('MicrosoftXMLDOM');
        doc.loadXML(str);
        return doc;
    }else if (window.DOMParse){
        return (new DOMParser).parseFromString(str,'text/xml');
    }
};

function doNothing(){};    

我甚至不知道如何检查我的php脚本是否正常工作。我使用的是mysqli,而不是上面谷歌地图tut链接上的mysql。我希望你们能帮助我。如果这是重复的,请给我发送一个链接。

如果
window.ActiveXObject
window.DOMParse
都不存在,则
解析XML
函数将返回null

function parseXml(str){
    if (window.ActiveXObject){
        var doc = new ActiveXObject('MicrosoftXMLDOM');
        doc.loadXML(str);
        return doc;
    }else if (window.DOMParse){
        return (new DOMParser).parseFromString(str,'text/xml');
    }
};
您有一个输入错误
DOMParse
应该是
DOMParser
(就像在中一样)


您得到的确切错误消息是什么?
/designIncludes/phpLogicIncludes/searchMarkers.php的XML输出是什么?lat='+myLat+'&lng='+myLng+'&radius='+radius看起来像什么?那个XML有效吗?我不知道。这是我第一次。但是当我检查错误时,它会说我的mysql查询是错误的,它应该返回true以便处理查询。我仍然使用我链接的教程,但是我没有使用mysqli,而是将它们改为mysqli。我的php代码可以在这里找到
function parseXml(str){
    if (window.ActiveXObject){
        var doc = new ActiveXObject('MicrosoftXMLDOM');
        doc.loadXML(str);
        return doc;
    }else if (window.DOMParse){
        return (new DOMParser).parseFromString(str,'text/xml');
    }
};
function parseXml(str){
    if (window.ActiveXObject){
        var doc = new ActiveXObject('MicrosoftXMLDOM');
        doc.loadXML(str);
        return doc;
    }else if (window.DOMParser){
        return (new DOMParser).parseFromString(str,'text/xml');
    }
};