Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/11/2015, 10:26
danicoga
 
Fecha de Ingreso: noviembre-2015
Mensajes: 2
Antigüedad: 8 años, 6 meses
Puntos: 0
Pregunta Variables vacias

Buenas, soy relativamente nuevo en JavaScript, y estoy encontrandome con un problema, para una web, quiero almacenar la ubicacion deesde la que se conectan los usuarios, recojo las coordenadas con javascript, y posteriormente quiero hacer una llamada a la propia pagina, para enviar los datos por post, recogerlos con php y almacenarlos en la tabla crrespondiente, el problema es que la variable la envia vacia, tengo 2 alerts mostrando el contenido, y siempre me lo muestra en primer lugar vacio y despues con las coordenadas correctas, pero parece que cuando lo envia desde el formulario o ha perdido, o no ha llegado a almacenar los valores.

Tengo la sensacion de que no me he explicado muy bien, pero os dejo aqui el codigo:

Código:
<script type="text/javascript">
		var coordjs="";
		var coordjs2="";
		(function(){
	if (navigator.geolocation)
	{
		navigator.geolocation.getCurrentPosition(function(objPosition)
		{
			var lon = objPosition.coords.longitude;
			var lat = objPosition.coords.latitude;
			coordjs=lat+","+lon;
			alert(coordjs+" 1");
		}, function(objPositionError)
		{
			switch (objPositionError.code)
			{
				case objPositionError.PERMISSION_DENIED:
					coordjs2 = "No se ha permitido el acceso a la posición del usuario.";
				break;
				case objPositionError.POSITION_UNAVAILABLE:
					coordjs2 = "No se ha podido acceder a la información de su posición.";
				break;
				case objPositionError.TIMEOUT:
					coordjs2 = "El servicio ha tardado demasiado tiempo en responder.";
				break;
				default:
					coordjs2 = "Error desconocido.";
			}
		}, {
			maximumAge: 75000,
			timeout: 15000
		});
	}
	else
	{
		coordjs = "Su navegador no soporta la API de geolocalización.";
	}
	alert(coordjs+" 2");
})();

	</script>
	<?php
		if( isset($_POST['var_php']) ){
			$coords=$_POST['var_php'];
			echo $coords;
		}else {
			echo "<form action=$_SERVER[PHP_SELF] method=post name=enviar>
				  <input type=hidden name=var_php id='coordenadas'></form>";
			echo "<script language='javascript'>
				  document.enviar.var_php.value='coordjs';
				  document.enviar.submit();
				</script>";
		}
	?>
La variable que me esta dando problemas es coordjs, y ya no se que hacer para que me salga de la funcion con el valor de las coordenadas asignado.

Muchas gracias por la ayuda!!!

Un saludo!