Sembra che tu sia sulla strada giusta.
Il tuo script php dovrebbe accettare un parametro timestamp e dovrebbe controllare se sono stati inseriti nuovi punti nel database dopo quel timestamp. Se sì, dovrebbe restituire una risposta con l'ultima voce (o un elenco di voci dopo quel timestamp, se vuoi mostrare un percorso in tempo reale mentre il veicolo si muove).
Sul lato client, potresti voler avviare una richiesta AJAX allo script lato server, utilizzando normale o polling lungo , con il parametro timestamp dell'ultimo aggiornamento.
Quando la tua richiesta AJAX riceve nuove informazioni dal server, devi semplicemente spostare i tuoi indicatori sulla mappa. Quindi avvia una nuova richiesta AJAX con il parametro timestamp aggiornato.
Esempio di pseudocodice utilizzando jQuery :
var lastUpdate = '2000/01/01 00:00:00';
function autoUpdate () {
$.ajax({
type: "GET",
url: "phpsqlajax_genxml.php?last_update=" + lastUpdate,
dataType: 'xml',
success: function(xmlData) {
// 1. Check if the xmlData is empty. If not we received
// some fresh data.
// 2. Update lastUpdate from the xmlData with the timestamp from
// the server. Don't use JavaScript to update the timestamp,
// because the time on the client and on the server will
// never be exactly in sync.
// 3. Move the markers on Google Map.
// Relaunch the autoUpdate() function in 5 seconds.
setTimeout(autoUpdate, 5000);
}
});
}