Buenas tardes. estoy tratando de obtener la ciudad exacta de los visitante con la api de de google map y luego envió la ciudad a php para procesarla pero tengo problemas con Explorer y safari ya que no carga nada. Si me pudieran dar un indicio de cual pudiese ser el problema se los agradecería mucho.
acá esta el código para obtener la ciudad geo.html y posteriormente la en vio a test.php para procesarlo
Código HTML:
Ver original<!DOCTYPE html>
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" /> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
window.onload = geolocalizar();
function errores(objError){
//manejamos los errores devueltos por Geolocation API
switch(objError.code){
//no se pudo obtener la informacion de la ubicacion
case objError.POSITION_UNAVAILABLE:
errorjs.innerHTML='La información de tu posición no es posible';
break;
//timeout al intentar obtener las coordenadas
case objError.TIMEOUT:
errorjs.innerHTML="Tiempo de espera agotado";
break;
//el usuario no desea mostrar la ubicacion
case objError.PERMISSION_DENIED:
errorjs.innerHTML='Necesitas permitir tu localización';
break;
//errores desconocidos
case objError.UNKNOWN_ERROR:
errorjs.innerHTML='Error desconocido';
break;
}
}
function localizame() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(coordenadas, errores);
}else{
errorjs.innerHTML='Tu navegador no soporta la Geolocalización en HTML5';
}
}
/*Funcion para geolocalizar*/
function geolocalizar()
{
$("#estado").text("Buscando...");
navigator.geolocation.getCurrentPosition(exito,errores);
}
function exito(posicion){
var lat = posicion.coords.latitude; //obtengo la latitud
var lon = posicion.coords.longitude; //obtengo la longitud
var googleAPI = "http://maps.googleapis.com/maps/api/geocode/json?latlng="+lat+","+lon; //Construyo URL
$.getJSON(googleAPI, function(data){
// var direccion = data.results[4].formatted_address;
var ciudad = data.results[0].address_components[4].long_name;
$("#contenedor").load("test.php",{ciudad});//envio la ciudad a php
});
$("#empieza").hide();
}
/*Funcion para el error cuando no hay geolocalizacion*/
function error(error)
{
$("#estado").text("No te encontre, pero lo voy a seguir intentando.");
}
<div id="contenedor" style='border:solid 1px black; width:50%; height:100px;'></div> <div id="errorjs" style="color:red;font-size:25px;margin-top:30px;"></div>
acá recibo la variable test.php
Código PHP:
Ver original<?php
$comuna = $_REQUEST['ciudad'];
echo $comuna;
?>