En fin, os cuento, he usado la función load que viene en las APIs de google maps, haciendo que el punto lo defina en vez de una latitud y una longitud, una cadena de la forma: "direccion, ciudad, provincia", y funciona perfecto:
Código PHP:
function load(direccion, capa) {
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById(capa));
var geocoder = new GClientGeocoder();
var address = direccion;
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
map.addControl(new GOverviewMapControl());
geocoder.getLatLng(address,
function showLocation(point) {
if (!point) {
alert(address + " no encontrado.");
} else {
map.setCenter(point, 15);
var marker = new GMarker(point);
map.addOverlay(marker);
var label = direccion;
GEvent.addListener(marker, "click",
function showLabel() {
marker.openInfoWindowHtml(label);
}
);
}
}
);
}
}
Código PHP:
<?
for ($i=0; $i<count($alumnos); $i++) {
$dni = $alumnos[$i]['DNI_alum'];
$localidad = $alumnos[$i]['localidad'];
$provincia = $alumnos[$i]['provincia'];
$calle = $alumnos[$i]['calle'];
$ruta_google = $calle.", ".$localidad.", ".$provincia;
?><div class='cuadro_input' id='<?=$dni?>' onclick="load('<?=$ruta_google?>', 'alumno_medio2');">
Código PHP:
<script src="http://maps.google.com/maps?file=api&v=2.x&key=<?=$keygoogle?>" type="text/javascript"></script>
Pues cuando pulso sobre un segundo alumno, sea cual sea, y fuera cual fuese que hubiera pulsado anteriormente, YA NO SALE EL PUNTO DE MARCACIÓN NI EL MINIMAPA DE ABAJO, y además, en el web developer me sale el error de "this.Ve is null" o también "this.$e is null", y de dice la referencia del prototipo de las apis, las cuales siempre hacen referencia a this.ve.width o height, y el $e igual, width y height...
Estoy confuso, ¿por qué a cualquier alumno, en el primer click aparece todo correcto, y en el segundo, sea cual sea, no sale la marca en el mapa y sale ese error?
He probado con hacer un GUnload() antes de hacer el load() por si queda algo en caché que crea conflicto, pero nada, y me he jartao de buscar pero no doy con el tema...
¿alguna propuesta?