[英]I'm trying to get a Javascript Function Value into a Mysql Database
我已经做了一些Php,mysql和HTML编程,但没有使用javascript做任何事情。 我一直在网上寻找,但还没有找到如何做的。 以下是获取当前用户GPS并将其显示在页面上的代码。 我需要能够获取GPS坐标并将其插入到Mysql数据库中。 我知道如何将php插入到mysql数据库中,但是我不知道如何将Javascript GPS坐标插入到我的数据库中。 任何帮助将非常感激。
我希望这是有道理的,但是如果您感到困惑,请告诉我?
<script language="javascript" type="text/javascript">
function getLocation() {
// Get location no more than 5 minutes old. 300000 ms = 5 minutes.
navigator.geolocation.getCurrentPosition(showLocation, showError, {enableHighAccuracy:true,maximumAge:300000});
}
function showError(error) {
alert(error.code + ' ' + error.message);
}
function showLocation(position) {
geoinfo.innerHTML= position.coords.latitude + ',' + position.coords.longitude;
}
</script>
<body onload="getLocation()">
<div id="geoinfo"></div>
</body>
这是学习Ajax http://api.jquery.com/jquery.ajax/的好时机,它是如何从前端(javascript,html ...)到数据库所在的php服务器端获取数据的。
您的Ajax将像javascript一样进入您的脚本标签:
var valueToInsert = "some Val";
$.ajax({
type: "POST",
url: "your_php_page_to_insert_into_mysql.php",
data: {
valueToInsert: val
},
success:function(data){
alert(data); //do something when done successfully
},
error:function(){
alert("error"); // do something when done unsuccessfully
},
statusCode: {
404: function() {
alert( "page not found" );
}
}
});
在您的php页面上,您可以使用POST来获取您的值
<?php
if(isset($_POST['valueToInsert']))
$valueToInsert = $_POST['valueToInsert'];
//use $valueToInsert in your MySql Query
?>
您编写的脚本一旦被浏览器接收,便会执行。 浏览器没有直接回任何My SQL服务器的连接-因此,您将需要将数据回传到服务器,并使该服务器将接收到的数据写入MySQL数据库。
如果将jQuery脚本插入页面,则可以轻松地使用它们的功能将数据发送到服务器正在侦听的URL:
您只需要jQuery和ajax即可将数据从客户端传递到服务器-这是客户端代码的示例:
$.post("serverside-data-receiver.php", {
coordsLatitude: position.coords.latitude,
coordsLongitude: position.coords.longitude
});
只需将该代码放入您的JavaScript函数中,然后创建PHP部分即可接收数据并完成所有数据库工作。
进一步阅读有关jQuery的文章: http : //api.jquery.com/jquery.post/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.