El caso es que tengo un listado de unos 40 pisos, en una base de datos, y quiero que en la web aparezca un mapa de Gmaps, con todas las localizaciones.
Pero cuando hago la programación me encuentro con el siguiente problema.
A. me muestra los que les da la gana cada vez que recargo carga unos diferentes.
B. El cuadro de texto que se abre al hacer click, es siempre el del ultimo piso que devuelve la query.
os pego el código que hago, por que me estoy volviendo loco!!!!!
Código PHP:
<?
$general_map_query = mysql_query("SELECT * from doro_apartament");
?>
<script>
function load() {
var miIcono = new GIcon(G_DEFAULT_ICON);
miIcono.image = "images/style/gmap_logo.png";
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map"));
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
var geocenter = new GClientGeocoder();
geocenter.getLatLng("sitges, barcelona", function(cent) {
map.setCenter(cent,13);
});
function crearMarca(punto, html){
var miMarca = new GMarker(punto,miIcono);
GEvent.addListener(miMarca, "click", function (){
miMarca.openInfoWindowHtml(html);
});
map.addOverlay(miMarca);
}
<? while($general_map = mysql_fetch_array($general_map_query)){
?>
var html = "<? echo "<h2>$general_map[title_es]</h2>"; ?>";
var geocoder = new GClientGeocoder();
geocoder.getLatLng("<? echo $general_map[adress]; ?>", function(point) {
crearMarca(point,html);
});
<? } ?>
}
}
window.onload=load
</script>