Estoy tratando de entender por qué este script PHP no está creando el mapa que especifico en el HTML. ¿algunas ideas?
<!doctype html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style>
html { height: 100% }
body { height: 100%; margin: 0; padding: 0 }
#map { height: 100% }
</style>
<script
src="http://maps.googleapis.com/maps/api/js?sensor=false">
</script>
<?php
$lat = $_POST['lat'];
$long = $_POST['long'];
echo "
<script>
function callMap() {
var latlng = new google.maps.LatLng($lat, $long);"; ?>
var options = {
zoom: 5,
center: latlng,
mapTypeId = google.maps.MapTypeId.TERRAIN
};
var map = new google.maps.Map(document.getElementById("map"),
options);
}
</script>
</head>
<body onload="callMap()">
<div id="map"></div>
</body>
</html>
3 respuestas
Su sintaxis de declaración options
está en mal estado:
var options = {
zoom: 5,
center: latlng,
mapTypeId = google.maps.MapTypeId.TERRAIN // ERROR
};
Debe ser
var options = {
zoom: 5,
center: latlng,
mapTypeId: google.maps.MapTypeId.TERRAIN
};
No uso PHP, así que no puedo decir si hay algún problema con ese código. Si eliminó los valores PHP / lat / lon codificados, ¿funciona el mapa? Tal vez un problema podría ser qué valores está publicando el formulario con la latitud y la longitud. No está haciendo ningún tipo de validación para garantizar que se encuentren dentro de los límites aceptables, p. +90 a -90 para latitud y +180 a -180 para la longitud.
También le falta un soporte en el enlace google js.
Preguntas relacionadas
Nuevas preguntas
php
PHP es un lenguaje de secuencias de comandos interpretado, dinámico, orientado a objetos y ampliamente utilizado, diseñado principalmente para el desarrollo web del lado del servidor. Se utiliza para preguntas sobre el lenguaje PHP.