2012-05-23 2 views
0

Я являюсь tyring для создания приложения PhoneGap с jQueryMobile. В моем приложении мне нужно отправить пользователям текущие геолокации GPS-координаты на сервер каждые 4 минуты. Как я могу это сделать?Отправить gps координаты на сервер каждую минуту

Это код, который я использовал прямо сейчас, но он не отправляет никаких данных. Как я могу изменить это, чтобы заставить его работать?

document.addEventListener("deviceready", onDeviceReady, false); 

var watchID = null; 

// PhoneGap is ready 
// 
function onDeviceReady() { 
    // Update every 4 minute 
    var options = { maximumAge: 240000, timeout: 5000, enableHighAccuracy: true }; 
    watchID = navigator.geolocation.watchPosition(onSuccess, onError, options); 
} 

// onSuccess Geolocation 
// 
function onSuccess(position) { 
    var lat = Position.coords.latitude; 
    var lng = Position.coords.longitude; 


    jQuery.ajax({ 
     type: "POST", 
     url: serviceURL+"locationUpdate.php", 
     data: 'x='+lng+'&y='+lat, 
     cache: false 
    }); 
} 

// onError Callback receives a PositionError object 
// 
function onError(error) { 
    alert('code: ' + error.code + '\n' + 
      'message: ' + error.message + '\n'); 
} 

ответ

-1

Вместо вызова setInterval позвоните по телефону, чтобы сделать это за вас.

// onSuccess Callback 
// This method accepts a `Position` object, which contains the current GPS coordinates 
// 
function onSuccess(position) { 
    var element = document.getElementById('geolocation'); 
    element.innerHTML = 'Latitude: ' + position.coords.latitude  + '<br />' + 
        'Longitude: ' + position.coords.longitude  + '<br />' + 
        '<hr />'  + element.innerHTML; 
} 

// onError Callback receives a PositionError object 
// 
function onError(error) { 
    alert('code: ' + error.code + '\n' + 
     'message: ' + error.message + '\n'); 
} 

// Options: retrieve the location every 3 seconds 
// 
var watchID = navigator.geolocation.watchPosition(onSuccess, onError, { frequency: 3000 }); 

http://docs.phonegap.com/en/1.0.0/phonegap_geolocation_geolocation.md.html#geolocation.watchPosition

+0

Я пытался использовать этот код, но это не похоже, чтобы обновить MySQL. Не могли бы вы увидеть мой отредактированный код, если он кажется строгим? – user1256852

+0

Сначала попробуйте изолировать проблему. Проверьте, вернулись ли данные в функцию javascript вашего успеха, чтобы узнать, является ли это проблемой js или php. – Oscar

+0

@ Oscar делает каждые 4 минуты отправки данных будет заряжать аккумулятор очень быстро? – LaraBeginer

Смежные вопросы