Ci proviamo..

Codice PHP:
<?php
$where
='';
if(
$_GET['id']!='')
{
  
$id=htmlspecialchars($_GET['id']);
  
$where="WHERE id dispositivo='$id'";
}
?>
<form method='get'>
<select name='id' onchange='this.form.submit()'>
<option></option>
<?php
$res
(mysql_query("SELECT id dispositivo as id FROM punti2 GROUP BY id dispositivo"));
while(
$d=mysql_fetch_object($res))
{
  if(
$id==$d->id)
    
$sel="selected='selected'";
  else
    
$sel='';
  echo 
"<option $sel value='$d->id'>$id</option>";
}
?>
</select>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>XXXXXXXXXXXX</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<script src="http://maps.google.com/maps?file=api&v=2&key=XXXXXXXXXXXXXX" type="text/javascript"></script>    
<script type="text/javascript">


// Crea il marker con la label passata come parametro
function createMarker(point, label)
{
    // Variabile marker
    var marker = new GMarker(point);
      
    // Crea listener per il click sull'oggetto
    GEvent.addListener(marker, "click", function()
    {
        marker.openInfoWindowHtml(label);
      });
  
      return marker;
}

    function load()
    {
        if (GBrowserIsCompatible())
          {
            // Crea mappa
            map = new GMap2(document.getElementById("map"));
            
            // Creo GeoCoder Max 1.6 query/sec
            geocoder = new GClientGeocoder();
        
            // Imposta centro mappa
            map.setCenter(new GLatLng(40.94572,17.28757), 13);
            
            // Visualizza controlli - TIPO MAPPA
            map.addControl(new GMapTypeControl());
            
            // Visualizza controlli - ZOOM GRANDE
            map.addControl(new GLargeMapControl());

            var point;


          }
<?php

    
// Stampa JS dopo aver effettuato query
    
$connection mysql_connect("XXXXXXX","XXXXXX","XXXXXXXXXXX");
    
mysql_select_db("XXXXXXXXXXX");
    
    
$sql "SELECT DISTINCT * FROM punti2 $where";
    
$result mysql_query($sql,$connection) or die($sql" " mysql_error());
    
    
// Stampa tutti i punti con pop-up indirizzo.
    
while($row mysql_fetch_assoc($result))
    {
    echo 
"point = new GLatLng({$row["LATITUDINE"]},{$row["LONGITUDINE"]});\n";
    echo 
"map.addOverlay(createMarker(point, '".addslashes($row["DATA_ORA"])."'));\n";
    }

?>
    }

//]]>
</script>

  </head>
  

  <body onload="load()" onunload="GUnload()">

  <div id="map" style="width: 1024px; height: 768px" >

</p>
</body>
</html>
Prova così..ma nn l'ho provato quindi nn ti garantisco il funzionamento