2012-03-23 17 views
0

私は理解できない...私のコードは次のとおりです。XMLをgenratingためGoogleマップのAPI V2のAJAXが機能していない私のコードが間違って何が起こっているか動作していない

/* =================Call.php========================*/ 
<?php 
/* Include settings My mysql database */ 
include ("config.php"); 
?> 

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
    <title>GG-Tracker (GSM and GPS location combined)</title> 
    <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=myAPIKey&sensor=true" type="text/javascript"></script> 

<?php 

echo " 
    <script type=\"text/javascript\"> 
    var map; 
    function load() { 
    if (GBrowserIsCompatible()) { 
     var map = new GMap2(document.getElementById(\"map\")); 
    downloadUrl(\"phpsqlajax_genxml.php\", function(data) { 
    var xml = data.responseXML; 
    var markers = xml.documentElement.getElementsByTagName(\"marker 
\"); 
    for (var i = 0; i < markers.length; i++) { 
    var lat = parseFloat(markers[i].getAttribute(\"lat\")); 
    var lon = parseFloat(markers[i].getAttribute(\"lon\")); 
    var html = \"<b>\" + \"</b> <br/>\" ; 
    var marker = new GMarker(new GLatLng(lat, lon)); 
    map.addOverlay(marker); 
    } 
    } 
} 
} 
function downloadUrl(url, callback) { 
    if (window.XMLHttpRequest) 
    { 
    request=new XMLHttpRequest(); 
    } 
    else 
    { 
    request=new ActiveXObject(\"Microsoft.XMLHTTP\"); 
    } 
    request.onreadystatechange = function() { 
    if (request.readyState == 4) { 
    request.onreadystatechange = doNothing(); 
    callback(request, request.status); 
    } 
    }; 
    request.open(\"GET\", url, true); 
    request.send(); 
    } 

function doNothing() {} 
    </script> 
    "; 
?> 
</head> 
<body onload="load()" onunload="GUnload()"> 
<center> 
    <div id="map" style="width: 800px; height: 600px"></div> 
    </body> 
    </html> 
/* End of =============Call.php===============*/ 

私phpsqlajax_genxml.phpは次のとおりです。

/* Start of ===========phpsqlajax_genxml.php=============== */ 
<?php 
require("phpsqlajax_dbinfo.php"); 
$dom = new DOMDocument("1.0"); 
$node = $dom->createElement("markers"); 
$parnode = $dom->appendChild($node); 
$connection=mysql_connect ($dbhost, $username, $password); 
if (!$connection) { 
die('Not connected : ' . mysql_error()); 
} 
$db_selected = mysql_select_db($database, $connection); 
if (!$db_selected) { 
die ('Can\'t use db : ' . mysql_error()); 
} 
// Select all the rows in the markers table 
$query = "SELECT * FROM markers"; 
$result = mysql_query($query); 
if (!$result) { 
die('Invalid query: ' . mysql_error()); 
} 
header("Content-type: text/xml"); 
// Iterate through the rows, adding XML nodes for each 
while ($row = @mysql_fetch_assoc($result)){ 
$node = $dom->createElement("marker"); 
$newnode = $parnode->appendChild($node); 
$newnode->setAttribute("tid",$row['TID']); 
$newnode->setAttribute("devid",$row['DevID']); 
$newnode->setAttribute("ldate",$row['LDate']); 
$newnode->setAttribute("ltime",$row['LTime']); 
$newnode->setAttribute("lat", $row['Lat']); 
$newnode->setAttribute("lon", $row['Lon']); 
$newnode->setAttribute("speed", $row['Speed']); 
} 
echo $dom->saveXML(); 
?> 
/*=========End of=============phpsqlajax_genxml.php*/ 

私のデータベース情報ファイルには、次のとおりです。phpsqlajax_dbinfo.php

/*=========Start of=== phpsqlajax_dbinfo.php============*/ 

<?php 
$dbhost = "localhost"; 
$username="root"; 
$password=""; 
$database="mygps"; 
$gmaps = "AIzaSyCRf9drwSYjBSeKpvSkEHFKqX_yBpq-Tkk"; 
?> 

/*===========End of phpsqlajax_dbinfo.php==============*/ 

上記の3つのファイルが作業を傾けます。

私はXMLを生成するだけphpsqlajax_genxml.phpファイルを実行した場合、それは を働いている私は、XMLを生成することができますが、それはJAVAを介してダウンロードすることはできません - 私は、AJAX呼び出しが動作していない いると思う....

オートを行うにはどのようなライブトラッキング.....

のようにページ全体をリロード ずにいくつかの時間間隔でMySQLからマーカーをリロード私の上記のコードは、読書 Pradip

ため

おかげで動作していない私を助けてください

答えて

0

出力HTMLソースにPHP-エコーを使用するための何らかの理由はありますか?

しかし、上記のコードは、あなたが実際に使用するものは本当にあるならば、あなたはここに問題があります。

var markers = xml.documentElement.getElementsByTagName(\"marker 
\"); 

を改行は、それを削除し、スクリプトを中断します。

関連する問題