在我的xhtml页面中,我有一个用户放置地址的字段,当他点击按钮时,gps坐标会显示在输入文本中。 我想添加ajax将这些值也插入到数据库中。 我在我的xhtml页面中使用这个脚本。
<script type="text/javascript">
var geocoder = new google.maps.Geocoder();
addr, latitude, longitude;
function geolocalise(){
addr = document.getElementById('adresse').value;
geocoder.geocode( { 'address': addr}, function(results, status) {
// Si g?oloc OK
if (status == google.maps.GeocoderStatus.OK) {
latitude = results[0].geometry.location.lat();
longitude = results[0].geometry.location.lng();
document.getElementById('lat').value = latitude;
document.getElementById('lng').value = longitude;
document.getElementById('aa').innerHTML=longitude;
var sendAjax = $.ajax({
type: "POST",
url: 'http://10.0.2.2/xx/insert-in-bdd.php',
data: 'lat='+latitude+'&lng='+longitude+'&adr='+addr,
success: handleResponse
});
}
function handleResponse(){
$('#answer').get(0).innerHTML = sendAjax.responseText;
}
});
}
</script>
我测试了数百万次......似乎没什么用。 网址
url: 'http://10.0.2.2/xx/insert-in-bdd.php',
指向我的localhost,php文件位于C:/Wamp/xx
我的php文件是
<?php
header('Content-type: text/html; charset=ISO-8859-1');
if(isset($_POST['lat']) && isset($_POST['lng'])){
$lat = addslashes($_POST['lat']);
$lng = addslashes($_POST['lng']);
$adr = addslashes($_POST['adr']);
$db = mysql_connect("localhost", "root", "");
$select = mysql_select_db(project, $db);
mysql_query('INSERT INTO test (lat,lng,adresse)
VALUES('$lat')');
echo 'Vos coordonnées ont bien été insérées en base de données.';
}else
echo 'Problème rencontré dans les valeurs passées en paramètres';
?>
注意:我创建了数据库项目和表格测试
在这里跟踪地理信息:
<input type="text" id="adresse"
value="saisissez votre adresse"
style="width: 291px; border: 1px solid #ccc;" /> <input
type="button" onclick="geolocalise()" value="geoooo"
style="border: 1px solid #ccc; padding: 1px; cursor: pointer;" />
<br />
<br />
Latitude : <input type="text" id="lat" value=""
style="border: 1px solid #ccc;" />
longitude <input
type="text" id="lng" value="" style="border: 1px solid #ccc;" />
<div id="answer">Réponse</div>
为什么不工作 谢谢你的帮助