sql >> Base de Datos >  >> RDS >> Mysql

dibujar dinámicamente polilíneas en googlemaps usando php/mysql

Parece que estás en el camino correcto.

Su secuencia de comandos php debe aceptar un parámetro de marca de tiempo y debe verificar si se han insertado nuevos puntos en la base de datos después de esa marca de tiempo. En caso afirmativo, debería devolver una respuesta con la entrada más reciente (o una lista de entradas después de esa marca de tiempo, si desea mostrar un rastro en vivo a medida que se mueve el vehículo).

En el lado del cliente, es posible que desee iniciar una solicitud AJAX al script del lado del servidor, ya sea usando normal o sondeo largo , con el parámetro de marca de tiempo de la última actualización.

Cuando su solicitud AJAX reciba nueva información del servidor, simplemente movería sus marcadores en el mapa. Luego inicie una nueva solicitud AJAX con el parámetro de marca de tiempo actualizado.

Ejemplo de pseudocódigo usando 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);
       }
    });
}