Zdá se, že jste na správné cestě.
Váš php skript by měl přijmout parametr časového razítka a měl by zkontrolovat, zda byly do databáze za tímto časovým razítkem vloženy nové body. Pokud ano, měl by vrátit odpověď s nejnovějším záznamem (nebo seznam záznamů po tomto časovém razítku, pokud chcete zobrazit živou stopu při pohybu vozidla).
Na straně klienta můžete chtít iniciovat požadavek AJAX na skript na straně serveru, buď pomocí normálního nebo dlouhé hlasování , s parametrem časové značky poslední aktualizace.
Když váš požadavek AJAX obdrží nové informace ze serveru, jednoduše přesunete své značky na mapu. Poté spusťte nový požadavek AJAX s aktualizovaným parametrem časového razítka.
Pseudokódový příklad s použitím 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);
}
});
}