Php PhoneGap/Cordova将地理位置从本地存储变量推送到MySQL
我有一个Cordova/Phonegap应用程序,可以将地理位置(经度/纬度)推送到本地存储。我在将这些变量放入mySQL数据库时遇到了一个问题。我只是尝试在连接到mySQL时发送数据。我的代码如下所示: index.html(地理位置设置) 在将数据发送到本地存储时工作正常。现在我所需要做的就是将数据推送到mySQL My ondevice.js(在我的脑海中引用) 和我的dbUserLocation.php发送到mySQL:Php PhoneGap/Cordova将地理位置从本地存储变量推送到MySQL,php,mysql,ajax,html,cordova,Php,Mysql,Ajax,Html,Cordova,我有一个Cordova/Phonegap应用程序,可以将地理位置(经度/纬度)推送到本地存储。我在将这些变量放入mySQL数据库时遇到了一个问题。我只是尝试在连接到mySQL时发送数据。我的代码如下所示: index.html(地理位置设置) 在将数据发送到本地存储时工作正常。现在我所需要做的就是将数据推送到mySQL My ondevice.js(在我的脑海中引用) 和我的dbUserLocation.php发送到mySQL: ini_set('display_errors',1)
ini_set('display_errors',1);
error_reporting(E_ALL);
header('Access-Control-Allow-Origin: *');
$hostdb = 'myhostip';
$namedb = 'mydbname';
$userdb = 'root';
$passdb = 'mydbpass';
$conn = new PDO("mysql:host=dbip; dbname=$namedb", $userdb, $passdb);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
if(isset($_POST['longitude']) && ($_POST['latitude'])) {
$longitude = $_POST['longitude'];
$latitude = $_POST['latitude'];
$stmt = "INSERT INTO row_location (latitude,longitude)
VALUES (:longitude,:latitude)";
$q = $conn->prepare($stmt);
$results = $q->execute(array(
":longitude"=>$longitude,
":latitude"=>$latitude
));
}
exit();
如前所述,我的经度和纬度存储到数据库中没有问题。但是让它发送到我的mySQL数据库是我有困难做的事情。我之所以使用这种方法,是因为我是为手机开发的(确切地说是Cordova/Phonegap)
如果有人在发送本地存储coords时遇到问题,我可以让我的数据发送到。。。我将我的ajax设置为发布我的新变量,该变量引用了来自localStorage的Cordova/Phonegaps getItem。我的代码如下。。。工作完美!希望这能帮助任何试图实现同样目标的人
var getlat = window.localStorage.getItem("latitude");
var getlng = window.localStorage.getItem("longitude");
$.ajax({
type: "POST",
url: 'http:myurl/dbUserLocation.php',
data: { latitude : getlat, longitude : getlng },
success: function(data)
{
alert("Location Data Sent!");
},
complete:function remove(){
localStorage.removeItem("latitude");
localStorage.removeItem("longitude");
},
error: function(){
alert('Code 303A');
}
});
ini_set('display_errors',1);
error_reporting(E_ALL);
header('Access-Control-Allow-Origin: *');
$hostdb = 'myhostip';
$namedb = 'mydbname';
$userdb = 'root';
$passdb = 'mydbpass';
$conn = new PDO("mysql:host=dbip; dbname=$namedb", $userdb, $passdb);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
if(isset($_POST['longitude']) && ($_POST['latitude'])) {
$longitude = $_POST['longitude'];
$latitude = $_POST['latitude'];
$stmt = "INSERT INTO row_location (latitude,longitude)
VALUES (:longitude,:latitude)";
$q = $conn->prepare($stmt);
$results = $q->execute(array(
":longitude"=>$longitude,
":latitude"=>$latitude
));
}
exit();
var getlat = window.localStorage.getItem("latitude");
var getlng = window.localStorage.getItem("longitude");
$.ajax({
type: "POST",
url: 'http:myurl/dbUserLocation.php',
data: { latitude : getlat, longitude : getlng },
success: function(data)
{
alert("Location Data Sent!");
},
complete:function remove(){
localStorage.removeItem("latitude");
localStorage.removeItem("longitude");
},
error: function(){
alert('Code 303A');
}
});