Foros del Web » Programando para Internet » PHP »

Extraer solo coordenadas

Estas en el tema de Extraer solo coordenadas en el foro de PHP en Foros del Web. Estimados. Estoy en un proyecto donde un receptor gps me envía a un archivo txt los datos de mas abajo. El problema es que solo ...
  #1 (permalink)  
Antiguo 13/01/2011, 17:49
 
Fecha de Ingreso: diciembre-2010
Mensajes: 34
Antigüedad: 13 años, 4 meses
Puntos: 0
Extraer solo coordenadas

Estimados.

Estoy en un proyecto donde un receptor gps me envía a un archivo txt los datos de mas abajo.

El problema es que solo necesito ingresar a mi bd lo que esta ennegrecido que son coordenadas sexagesimales en notación decimal. Cabe señalar que solo necesito los datos de la línea $GPGGA.
Todo esto con php.


Muchas gracias de antemano.

$GPGGA,233834.000,5309.2292,S,07056.7240,W,1,9,1.01,86.9,M,12.8,M,,*6A
$GPGSA,A,3,29,21,25,10,05,30,16,13,31,,,,2.10,1.01 ,1.84*03
$GPRMC,233834.000,A,5309.2292,S,07056.7240,W,0.00, 82.17,130111,,,A*52
$GPVTG,82.17,T,,M,0.00,N,0.01,K,A*00
  #2 (permalink)  
Antiguo 13/01/2011, 18:07
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 15 años, 9 meses
Puntos: 103
Respuesta: Extraer solo coordenadas

utiliza este codigo:
Código PHP:
<?php
$ar 
file_get_contents("archivo.txt");
$ar=explode(',',$ar);
echo 
$ar[2];//cordenada 1
echo $ar[4];//cordenada 2
?>
saludos
  #3 (permalink)  
Antiguo 13/01/2011, 18:21
Avatar de Potro  
Fecha de Ingreso: abril-2001
Mensajes: 2.249
Antigüedad: 23 años
Puntos: 39
Respuesta: Extraer solo coordenadas

Muy facil:::


Código PHP:
Ver original
  1. //nombre de archivo txt
  2. $lines = file('nombres.txt');
  3.  
  4. foreach ($lines as $line_num => $line) {  $datos = split(",", $line);
  5.     if($datos[0] == "$GPGGA"){
  6.         mi_query = "insert into (v1,v2,v3) values ('".$datos[0]."', '".$datos[2]."', '".$datos[4]."')"
  7.     }
  8. }

saludos,,,
__________________
Paginación en FLASH,

http://www.forosdelweb.com/f62/pagin...o-aqui-540241/
  #4 (permalink)  
Antiguo 13/01/2011, 19:48
 
Fecha de Ingreso: diciembre-2010
Mensajes: 34
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Extraer solo coordenadas

Muchas gracias, pero tengo otro problema.
En google maps no me acepta esa coordenada ya que necesito que este separada en el segundo numero ________Ej: 53 09.2292 Despues de 53 va un espacio, ya que este numero determina los grados.
Podra ser posible esto. que puedo hacer.

Gracias

Última edición por baskcar; 13/01/2011 a las 20:34
  #5 (permalink)  
Antiguo 13/01/2011, 22:07
Avatar de JoseGMariani  
Fecha de Ingreso: diciembre-2008
Ubicación: Edo Lara
Mensajes: 251
Antigüedad: 15 años, 4 meses
Puntos: 8
Respuesta: Extraer solo coordenadas

Bueno has que el recector te envie ese dato, con el espacio.. :)

potro.. me podrias explicar el codigo que le acabas de mandar, yo se que lee lo que esta en el archivo text, linea por linea y dato, esta separado por comas.

lo que no entiendo es cuando la insertas

mi_query = "insert into (v1,v2,v3) values ('".$datos[0]."', '".$datos[2]."', '".$datos[4]."')"


por que es ".$datos[0] $datos[2] y luego datos[4] ? :S

te lo pregunto por que yo quisiera por ejemplo hacer una consulta donde me muestre la suma de de un campo, pero solo un campo en especifico, bueno mejor lo pongo en un nuevo post y espero que lo leas mas arriba..:)
__________________
"Nunca seas arrogante con los humildes, ni humilde con los arrogantes." Paulo Coelho..
  #6 (permalink)  
Antiguo 14/01/2011, 13:11
Avatar de Potro  
Fecha de Ingreso: abril-2001
Mensajes: 2.249
Antigüedad: 23 años
Puntos: 39
Respuesta: Extraer solo coordenadas

Cita:
Iniciado por JoseGMariani Ver Mensaje
potro.. me podrias explicar el codigo que le acabas de mandar, yo se que lee lo que esta en el archivo text, linea por linea y dato, esta separado por comas.

lo que no entiendo es cuando la insertas

mi_query = "insert into (v1,v2,v3) values ('".$datos[0]."', '".$datos[2]."', '".$datos[4]."')"


por que es ".$datos[0] $datos[2] y luego datos[4] ? :S


Te explico:::::::::.

En la variable datos se queda el split que le hago al registro linea por linea, en este caso la variable $line
Entonces uso tu misma logica que tu.

el vector 0 es el nombre $GPGGA

el vector 2 es 5309.2292

y el vector 4 es 5309.2292


el insert solo lo simule como el deberia de meterlo para que se ingrese en la base de datos:

Tu podrias es tomar el vector a sumar y empezar ahcer algo tan facil como..


$suma = $suma+dato[x];

::::::::::::.
__________________
Paginación en FLASH,

http://www.forosdelweb.com/f62/pagin...o-aqui-540241/
  #7 (permalink)  
Antiguo 14/01/2011, 13:14
Avatar de Potro  
Fecha de Ingreso: abril-2001
Mensajes: 2.249
Antigüedad: 23 años
Puntos: 39
Respuesta: Extraer solo coordenadas

Cita:
Iniciado por baskcar Ver Mensaje
Muchas gracias, pero tengo otro problema.
En google maps no me acepta esa coordenada ya que necesito que este separada en el segundo numero ________Ej: 53 09.2292 Despues de 53 va un espacio, ya que este numero determina los grados.
Podra ser posible esto. que puedo hacer.

Gracias
A lo que tu dices mi estimado podrias hacer otro split a tu primer vector 2 para que asi vuelvas a separar y puedas insertar ese datos en dos campos.


$grados = split(" ", $datos[2];)

y queda

$grados[0] = 53
$grados[1] = 09.2292


Saludos,,,
__________________
Paginación en FLASH,

http://www.forosdelweb.com/f62/pagin...o-aqui-540241/
  #8 (permalink)  
Antiguo 15/01/2011, 17:34
Avatar de JoseGMariani  
Fecha de Ingreso: diciembre-2008
Ubicación: Edo Lara
Mensajes: 251
Antigüedad: 15 años, 4 meses
Puntos: 8
Respuesta: Extraer solo coordenadas

Guaoo Potro muchas gracias..=) ! voy a ver como aplico tu ejemplo para algo que quiero lograr pero le ando dando la vuelta; no lo puedo poner aca; por que seria invadirle la pregunta al compañero.. =)
__________________
"Nunca seas arrogante con los humildes, ni humilde con los arrogantes." Paulo Coelho..

Etiquetas: coordenadas, extraer
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 15:43.