Foros del Web » Programando para Internet » PHP »

Leer un TXT variable y cargarlo en MySQL

Estas en el tema de Leer un TXT variable y cargarlo en MySQL en el foro de PHP en Foros del Web. Un saludo cordial a toda la comunidad, soy yo otra vez... Tengo otra dudita con un archivo txt que necesito leer por php, resulta que ...
  #1 (permalink)  
Antiguo 04/03/2010, 09:47
Avatar de neobeat  
Fecha de Ingreso: mayo-2006
Mensajes: 9
Antigüedad: 17 años, 10 meses
Puntos: 0
Leer un TXT variable y cargarlo en MySQL

Un saludo cordial a toda la comunidad, soy yo otra vez...

Tengo otra dudita con un archivo txt que necesito leer por php, resulta que el archivo en cuestion es la informacion de un boleto aereo generado a partir de otro sistema, pero el problemita lo tengo porque la informacion se muestra en multilinea y las lineas del archivo son variables, o sea, que nunca es igual el numero de lineas entre cada informacion del boleto

Bueno para ser mas explicativo, es algo asi:

Código:
BFH0000000101790308  200PROD1001110702  000001                                                                                          
BCH00000002020121100110F                                                                                                                
BOH000000030395992120100110                       VIN2                                                                                  
BKT0000000406      000001                    006S 308                                               AGTD00000000 00000000 00000000      
BKS00000005241001100000013082400769910  07906001058034955VVVV   95992120                    CANXCCSCCS            ZQNL4B                
BKS00000006301001100000013082400769910  0000000000000000000000{         00000000000        00000000000000000000000000000000{     VIN2   
BKS00000007391001100000013082400769910  0D        000000000000000{      000000000000000{000000000000000{0000000000{              VIN2   
BKP0000000884100110000001VD        00000000000                                                0000000000000000{0000000000{VIN2   VIN2   
BKP0000000984100110000001CA        00000000000                                                0000000000000000{0000000000{VIN2   VIN2   
BKT0000001006      000002                    012X 308                                               AGTD00000000 00000000 00000000      
BKS00000011241001100000023082400769873  57906001056728206FVVV   95992120                    TKTTVUGCWS            ZR86YP                
BKS00000012301001100000023082400769873  50000003460{0000000000{ EU      0000000034FYN      0000000276H0000003771D0000000000{     VIN2   
BKS00000013391001100000023082400769873  5D        000000000000000{      000000000000000{000000000000000{0000000000{              VIN2   
BKS00000014461001100000023082400769873  5                                VALID ONLY FOR VX                                              
BKI00000015631001100000023082400769873  51O                 VUG  CWS  VX   2127 Y 10JAN 1530    OK30K Y                                 
BAR00000016641001100000023082400769873  5VIN  346.00/           VIN  3.46EUVIN 27.68YN           VIN  377.14    79060                A  
BAR00000017651001100000023082400769873  5PARRA/MARIA MARIU MRS                                                                         
BAR00000018661001100000023082400769873  51VIXXXXXXXXXXXX2782/0811                                                                       
BKF00000019811001100000023082400769873  5  1VIG VX CWS346.00VIN346.00END                                                                
BKP0000002084100110000002CCVI4937  0000003771D4937524625122782   0811     206480              0000000000000000{0000000000{VIN2   VIN2   
BKP0000002184100110000002CA        0000000000{                                                0000000000000000{0000000000{VIN2   VIN2   
BKT0000002206      000003                    013X 308                                               AGTD00000000 00000000 00000000      
BKS00000023241001100000033082400769874  67906001056805696FFVV   95992120                    TKTTMIRMIR            ZUY6SY                
BKS00000024301001100000033082400769874  60000003560{0000000000{ EU      0000000035FYN      0000000284H0000003880D0000000000{     VIN2   
BKS00000025391001100000033082400769874  6D        000000000000000{      000000000000000{000000000000000{0000000000{              VIN2   
BKS00000026461001100000033082400769874  6                                NON REF/NON TRANSF/NON END   VALID ON VX ONLY                  
BKI00000027631001100000033082400769874  61O                 MIR  CWS  VX   2101 T 20JAN 0600    OK30K TRT                               
BKI00000028631001100000033082400769874  62O                 CWS  MIR  VX   2112 T 20JAN 1730    OK30K TRT                               
BAR00000029641001100000033082400769874  6VIN  356.00/           VIN  3.56EUVIN 28.48YN           VIN  388.04    79060                A  
BAR00000030651001100000033082400769874  6BOSCYN/JENX                                                                                   
BAR00000031661001100000033082400769874  61CAXXXXXXXXXXXX7430/0712                                                                       
BKF00000032811001100000033082400769874  6  1MIR VX CWS178.00V0 MIR178.00VIN356.00END                                                    
BKP0000003384100110000003CCCA5543  0000003880D5543950312727430   0712     877569              0000000000000000{0000000000{VIN2   VIN2   
BKP0000003484100110000003CA        0000000000{                                                0000000000000000{0000000000{VIN2   VIN2
Como ven el numero de lineas entre cada boleto es diferente, y se necesecita recorer el archivo completo para pasar los datos a una base de datos, el unico patron que consigo es que al principio de un boleto nuevo la linea empieza en BKT, de resto todo lo demas cambia.

Alquien me puede ayudar con esto? gracias de antemano y hasta luego! salu2

Última edición por neobeat; 04/03/2010 a las 10:01
  #2 (permalink)  
Antiguo 04/03/2010, 09:50
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Leer un TXT variable y cargarlo en MySQL

Tienes que verificar cual es el delimitador. Al parecer es el espacio o tal vez doble espacio. Verifica el delimitador y luego con las funciones de filesystem puedes leer el TXT.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 04/03/2010, 09:51
Avatar de wpersei  
Fecha de Ingreso: septiembre-2006
Ubicación: Bogota
Mensajes: 189
Antigüedad: 17 años, 7 meses
Puntos: 1
Respuesta: Leer un TXT variable y cargarlo en MySQL

me imagino que la demás información también tiene algún patrón, y por lo que veo separas la info por un espacio, lo que debes es tratar de entender para que sirve cada info y así mismo generar un algoritmo que te la organice

saludos
__________________
www.ogallardo.com - Mi blog
  #4 (permalink)  
Antiguo 04/03/2010, 10:09
Avatar de neobeat  
Fecha de Ingreso: mayo-2006
Mensajes: 9
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: Leer un TXT variable y cargarlo en MySQL

Cita:
Iniciado por wpersei Ver Mensaje
me imagino que la demás información también tiene algún patrón, y por lo que veo separas la info por un espacio, lo que debes es tratar de entender para que sirve cada info y así mismo generar un algoritmo que te la organice

saludos
La info esta separada por espacios, pero cambia el numero de espacios dependiendo del dato, tal cual como lo escribi en el "code" es como se muestra el txt, asi que, por ejemplo, cada vez que alguien compra un boleto tiene que cambiar el nombre, y el numero de espacios entre cada dato cambia... si fuera solo un espacio ya estaria listo jeje
  #5 (permalink)  
Antiguo 04/03/2010, 10:16
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Leer un TXT variable y cargarlo en MySQL

Pero como te indique, verifica si es que cada cierta cantidad de espacio es una columna diferente. Por ejemplo la primera columna veo que siempre esta llena, pero la segunda puede ser que no y por eso continua con otros espacios para la tercera columna y asi sucesivamente.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: mysql, txt, variables
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 13:50.