Foros del Web » Programando para Internet » Javascript »

Guardar coordenadas en bd

Estas en el tema de Guardar coordenadas en bd en el foro de Javascript en Foros del Web. Hola queria consultarles como hago para guardar en mi bd en los campos lat y lng, las coordenadas q trae la funcion y q viene ...
  #1 (permalink)  
Antiguo 15/05/2009, 08:00
Avatar de lr05  
Fecha de Ingreso: abril-2009
Mensajes: 12
Antigüedad: 15 años
Puntos: 0
Guardar coordenadas en bd

Hola queria consultarles como hago para guardar en mi bd en los campos lat y lng, las coordenadas q trae la funcion y q viene en point. La idea es dar de alta en un formulario una casa(para una inmobiliaria) y q al ingresar la direccion se ejecute este codigo y almacene en la bd en el campo lat la latitud y en el campo lng la longitud. Abajo les dejo el codigo
Gracias


var geocoder = new GClientGeocoder();
geocoder.getLatLng("av cordoba 60 oeste, san juan, Argentina",function(point){
if(!point){
alert("Lugar no encontrado");
} else {
map.setCenter(point,12);
var marca=new GMarker(map.getCenter());
marca.title="titulo de esta marca";
map.addOverlay(marca);
map.openInfoWindowHtml(marca.getPoint(), marca.title);
map.setCenter(new GLatLng(point),2);

}
});
  #2 (permalink)  
Antiguo 15/05/2009, 08:02
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Guardar coordenadas en bd

Con Javascript no puedes acceder a la base de datos. Si el formulario donde se encuentra tiene como acción una página donde se guarde en la base de datos esos datos puedes colocarlos en campos ocultos (type="hidden") para que también se envíen con el formulario.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 15/05/2009, 16:37
Avatar de lr05  
Fecha de Ingreso: abril-2009
Mensajes: 12
Antigüedad: 15 años
Puntos: 0
Respuesta: Guardar coordenadas en bd

Hola David, gracias por responder tan rapido. Me a surgido otra duda q no logro encontrar rta. En el html q tengo, en el head se ejecuta el transformar la direccion ingresada en el formulario en coordenadas, la cosa es q esas coordenadas nose como pasarlas de nvo al formulario y asignarselas a dos campos ocultos como me habias dicho q podia hacerlo. te paso el codigo, por si me podes dar una mano. Y gracias de antemano, por tu ayuda.


function initialize() {
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map_canvas"));
map.setCenter(new GLatLng(-31.535238, -68.512115), 11);
}


var geocoder = new GClientGeocoder();
var domicilio=registro.dlio.value;
geocoder.getLatLng("domicilio",function(point){
if(!point){
alert("Lugar no encontrado");
} else {
map.setCenter(point,12);
var marca=new GMarker(map.getCenter());
marca.title="titulo de esta marca";
map.addOverlay(marca);
map.openInfoWindowHtml(marca.getPoint(), marca.title);
map.setCenter(new GLatLng(point),2);

}
});


}

</head>
<body>


<FORM METHOD="GET" name="registro" onSubmit = "return validar(this)" ACTION="altaprueba.php" >
<fieldset>
<legend></legend>
<p><span class="Estilo2"><span class="Estilo3">Agregar</span> nuevo propietario </span> </p>
<p align="center"><img src="images/center_box_bg.gif" width="257" height="10" /> </p>
<p>&nbsp;</p>
<table border = '0' align="center" bordercolor="#CCCCCC">
<tr>
<td><label>Nombre y Apellido : </label></td>
<td><input name='nom' type='text' class='input' id='nom' size='40' maxlength='100' /></td>
</tr>

<tr>
<td><label>Domicilio : </label></td>
<td><input type='text' name='dlio' maxlength='100' size='40' class='input' id='dlio' /></td>
</tr>

<tr>
<td><label>Telefono: </label></td>
<td><input name='tel' type='text' class='input' id='tel' size='40' maxlength='100' /></td>
</tr>
<input type=hidden name="lat" value="">
<input type=hidden name="lng" value="">
<tr>
<td><label>Mail : </label></td>
<td><input name='mail' type='text' class='input' id='mail' size='40' maxlength='100' /></td>
</tr>
</table>
<p>&nbsp;</p>
<div align="right">

<p>
<input class=button type=submit value=Guardar name='submit' />
</p>

</div>
<p>&nbsp;</p>
</fieldset>


</form>
<script language="JavaScript1.2" type="text/javascript">
function validar(registro) {
if (registro.nom.value.length < 4) {//Comprueba q el nbre tenga mas de 4 caracteres
alert("Escriba por lo menos 4 caracteres en el campo \"Nombre\".");
registro.nom.focus();
return (false);
}
var checkOK = "ABCDEFGHIJKLMNÑOPQRSTUVWXYZÁÉÍÓÚ" + "abcdefghijklmnñopqrstuvwxyzáéíóú ";
var checkStr = registro.nom.value;
var allValid = true; //Comprueba q tenga alguno de los caracteres de la cadena checkok q son los permitidos
for (i = 0; i < checkStr.length; i++) {
ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length) {
allValid = false;
break;
}
}
if (!allValid) {
alert("Escriba sólo letras en el campo \"Nombre\".");
registro.nom.focus();
return (false);
}
var checkOK = "0123456789";
var checkStr = registro.tel.value;
var allValid = true;
var decPoints = 0;
var allNum = "";
for (i = 0; i < checkStr.length; i++) { //Comprueba q el contenido sean solo nros
ch = checkStr.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length) {
allValid = false;
break;
}
allNum += ch;
}
if (!allValid) {
alert("Escriba sólo dígitos en el campo \"Tel\".");
registro.tel.focus();
return (false);
}
if ((registro.mail.value.indexOf ('@', 0) == -1)||(registro.mail.value.length < 5)) {
alert("Escriba una dirección de correo válida en el campo \"Mail\".");
return (false);
}
return (true);
}
</script>

</body>
</html>
  #4 (permalink)  
Antiguo 15/05/2009, 16:48
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Guardar coordenadas en bd

Asigna un id a tu campo oculto, por ejemplo: "coordenadax". Y lo modificas así:
Código Javascript:
Ver original
  1. window.onload = function() {
  2.     document.getElementById("coordenadax").value = "valor que quieras asignar";
  3. }
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 18/05/2009, 09:59
Avatar de lr05  
Fecha de Ingreso: abril-2009
Mensajes: 12
Antigüedad: 15 años
Puntos: 0
Respuesta: Guardar coordenadas en bd

Hola David, estuve probando con el codigo q me pasaste, pero no logro tomar la direccion del form y enviarla a la funcion javascript para transformarla en coordenadas. podra ser q el codigo jsc esta en el head? pq tb probé colocarlo al final pero no anda. Tb probé usando un boton para q llame al transformar, pero no hay caso.
El codigo del transformar es:
function coordenada(){
var geocoder = new GClientGeocoder();
var domicilio=document.registro.dlio.value;

geocoder.getLatLng(domicilio,function(point){
if(!point){
alert("Lugar no encontrado");
} else {
map.setCenter(point,12);
var marca=new GMarker(map.getCenter());
marca.title="titulo de esta marca";
map.addOverlay(marca);
map.openInfoWindowHtml(marca.getPoint(), marca.title);
map.setCenter(new GLatLng(point),2);
window.onload = function() {
document.registro.getElementById("pto").value = point;
}
});
}
y el html con el boton que llama a la funcion es:
<INPUT TYPE="button" VALUE="transformar" onClick="coordenada()"/>
<input type='hidden' name='pto' value='unpunto' id='pto' />

Agradeceria tu ayuda, gracias!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:44.