function load_point(q) {
alert(q);
// Change this depending on the name of your PHP file
downloadUrl("phpsqlajax_genxml2.php?q="+q, function(data) {
......
});
} 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, request.status);
}
};
request.open('GET', url, true);
request.send(null);
}
下面是phpsqlajax_genxml2.php文件<?php
$q=$_GET["q"];
echo $q;
?>
php文件当中不能接收参数q 不知道什么原因
js中alert(q);能打印q值
request.onreadystatechange = doNothing;
应为
request.onreadystatechange = callback;2、load_point 的回调函数中,应以 data.responseText 访问返回的数据
版主改为callback;也不对啊
能否帮着看一下
ploy.html<!DOCTYPE html >
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<title>PHP/MySQL & Google Maps Example</title>
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js"></script>
<link rel="stylesheet" href="//code.jquery.com/ui/1.11.2/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.2/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css">
<script type="text/javascript">
var map;
var current_date =3;
function load() {
map = new google.maps.Map(document.getElementById("map"), {
center: new google.maps.LatLng(31.2232, 121.4722),
zoom: 12,
mapTypeId: 'roadmap'
});
var infoWindow = new google.maps.InfoWindow;
}
function load_point(q) {
alert(q);
// Change this depending on the name of your PHP file
downloadUrl("phpsqlajax_genxml2.php?q="+q, function(data) {
//alert("downloadUrl1");
var xml = data.responseXML;
var ers = xml.documentElement.getElementsByTagName("er");
var polyOptions = {
strokeColor: '#000000', // 颜色
strokeOpacity: 1.0, // 透明度
strokeWeight: 2 // 宽度
}
var poly = new google.maps.Polyline(polyOptions);
poly.setMap(map); // 装载 for (var i = 0; i < ers.length; i++) {
var name = ers[i].getAttribute("name");
var address = ers[i].getAttribute("address");
var type = ers[i].getAttribute("type");
var point = new google.maps.LatLng(
parseFloat(ers[i].getAttribute("lat")),
parseFloat(ers[i].getAttribute("lng")));
var html = "<b>" + name + "</b> <br/>" + address;
var path = poly.getPath(); //获取线条的坐标
path.push(point); //为线条添加标记坐标
//生成标记图标
var er = new google.maps.Marker({
position:point
});
}
});
}
function downloadUrl(url, callback) {
var request = window.ActiveXObject ?
new ActiveXObject('Microsoft.XMLHTTP') : //针对IE5 IE6 使用
new XMLHttpRequest;
request.onreadystatechange = function() {
if (request.readyState == 4) {
request.onreadystatechange = doNothing;
callback(request, request.status);
}
};
request.open('GET', url, true);
request.send();
}
//时间控件函数
$(function() {
$( "#datepicker" ).datepicker();
//alert($("#datepicker").val());
//alert("time");
});
function doNothing() {}
//]]> </script> </head> <body onload="load()">
<div>
<div id="map" style="width: 1000px; height: 600px"></div>
<div id="button" >
<p>Date: <input type="text" id="datepicker">
<button onclick="load_point(current_date)">轨迹回放</button> </p>
</div>
</div>
</body></html>
phpsqlajax_genxml2.php<?php$q=$_GET["q"];
echo $q;
$username="root";
$password="";
$database="data";function parseToXML($htmlStr)
{
$xmlStr=str_replace('<','<',$htmlStr);
$xmlStr=str_replace('>','>',$xmlStr);
$xmlStr=str_replace('"','"',$xmlStr);
$xmlStr=str_replace("'",''',$xmlStr);
$xmlStr=str_replace("&",'&',$xmlStr);
return $xmlStr;
}// Opens a connection to a MySQL server
$connection=mysql_connect ('localhost', $username, $password);
if (!$connection) {
die('Not connected : ' . mysql_error());
}// Set the active MySQL database
$db_selected = mysql_select_db($database, $connection);
if (!$db_selected) {
die ('Can\'t use db : ' . mysql_error());
}// Select all the rows in the ers table
$query = "SELECT * FROM ers WHERE 1";
$result = mysql_query($query);
if (!$result) {
die('Invalid query: ' . mysql_error());
}header("Content-type: text/xml");// Start XML file, echo parent node
echo '<ers>';// Iterate through the rows, printing XML nodes for each
while ($row = @mysql_fetch_assoc($result)){
// ADD TO XML DOCUMENT NODE
echo '<er ';
echo 'name="' . parseToXML($row['name']) . '" ';
echo 'address="' . parseToXML($row['address']) . '" ';
echo 'lat="' . $row['lat'] . '" ';
echo 'lng="' . $row['lng'] . '" ';
echo 'type="' . $row['type'] . '" ';
echo '/>';
}// End XML file
echo '</ers>';
?>