Al cargar la pagina quiero que todos esos lugares esten plasmados como marcadores en un mapa de google maps, pero solo me muestra el primer lugar, los siguientes no, a ver si alguien me puede ayudar.
En este momento me da error en la linea 56, ya que no puedo leer un array en la api. Como le paso mas de 1 resultado para que lo lea la api? Y para mostrar en la variable de google maps "marker"? (Línea 106)
Gracias.
Código Javascript:
Ver original
<?php $doc=new DOMDocument(); $host = "localhost"; $user = "root"; $pass = "123456"; $bd = "facebook"; $dbc; $conexion = mysqli_connect($host, $user, $pass, $bd); if($conexion->connect_errno){ echo "ERROR AL CONECTARSE ($conexion->connect_errno)"; } $usuario = $_SESSION['username']; $consulta="SELECT lugar FROM lugares WHERE user = '$usuario' "; $resultado = mysqli_query($conexion, $consulta) or die(mysql_error()); $datos = mysqli_fetch_array($resultado); $row = $resultado->num_rows; if($row<>0){ $direccion[] = $datos["lugar"]; }else{ echo "Error"; } $xml="http://maps.googleapis.com/maps/api/geocode/xml?address=".$direccion."&sensor=true"; //echo $xml; $doc->load($xml); $persona=$doc->getElementsByTagName("result"); foreach ($persona as $p) { $latitud=$p->getElementsByTagName("lat"); $latitud=$latitud->item(0)->nodeValue; $longitud=$p->getElementsByTagName("lng"); $longitud=$longitud->item(0)->nodeValue; //echo "latitud=".$latitud." - longitud=".$longitud."<br>"; } ?> <script type="text/javascript" src="https://maps.google.com/maps/api/js?sensor=true"> </script> <script type="text/javascript"> function cargar_mapa() { var myOptions = { scaleControl: true, center: new google.maps.LatLng(<?php echo $latitud;?>, <?php echo $longitud;?>), zoom: 6, mapTypeId: google.maps.MapTypeId.ROADMAP }; var map = new google.maps.Map(document.getElementById('map_canvas'), myOptions); for (var i = 0, j = <?php.$direccion.?>.length; i < j; i++) { var contenido = direccion[i].contenido; var marker = new google.maps.Marker({ position: new google.maps.LatLng(direccion[i].position.lat, direccion[i].position.lng), map: map }); /* var marker = new google.maps.Marker({ map: map, title: "MARCADOR", position: map.center, animation: google.maps.Animation.BOUNCE });*/ marker.setIcon('https://dl.dropboxusercontent.com/u/20056281/Iconos/male-2.png'); var infowindow = new google.maps.InfoWindow(); infowindow.setContent('<b>Mi ubicacion</b>'); google.maps.event.addListener(marker, 'click', function() { infowindow.open(map, marker); }); } google.maps.event.addDomListener(window, 'load', cargar_mapa); </script>