Guardar en Base de Datos Archivos de texto

45 views
Skip to first unread message

Alcides G.

unread,
Jun 4, 2013, 3:09:40 PM6/4/13
to comuni...@googlegroups.com
Hola, será que alguna persona puede ayudarme con este tema; aquí les doy mas detalle de lo que pretendo desarrollar:
Mi intención es descargar de una pagina web cada cierta hora un archivo de texto el cual contiene varias lineas separadas por espacio y el fin de linea termina cuando aparece el carácter de " = " y comienza luego otra linea y así sucesivamente; una vez descargada en forma automática lo que pretendo es guardar este archivo en una base de datos como Mysql que también debe hacerse en forma automática y luego para mostrar ciertos datos de la Base de Datos a una pagina Web a desarrollar.
Agradecería mucho una ayudita.
Saludos

agosto bloj

unread,
Jun 5, 2013, 8:30:26 AM6/5/13
to comuni...@googlegroups.com
Hola Alcides. Creo que con un simple insert alcanzaria, pero depende del largo maximo que pueda tener ese archivo. Puede convenir guardarlo en un varchar si no es extenso y necesitas alguna tarea especifica con ese texto, sino hay campos blob en todos los motores de bases de datos, donde se puede guardar cualquier archivo, ya sea texto, grafico, ejecutable. 

Ahora q escribo todo esto, se me ocurre repreguntar. El problema lo tenes haciendo el 'parse' del texto, o almacenandolo en la base de datos?

agosto bloj

unread,
Jun 7, 2013, 4:45:38 AM6/7/13
to comuni...@googlegroups.com
Agrego tu respuseta aca, por si le sirve a otros:
Voy a especificar mejor mi problema; tengo un archivo de texto que cada hora se esta generando o alzándose a un sitio web el cual tengo que capturar y descargar ese archivo para luego leer linea por linea esos datos que también tienen varias columna separadas por espacio que representan varios campos para la base de datos; mi pregunta es como hacer que en forma automática recorra esto por linea y por columna y de esa forma guardar en base de datos.
Obs: formato de archivo que se genera cada hora, cada fila representa un lugar que a su vez tiene columna con los detalles del lugar

archivo.txt
32970 00000 10258 20167 30079 40166 56005=
32970 00604 10256 20165 30044 40146 56006=
32970 00803 10256 20183 30088 40182 54000=

agosto bloj

unread,
Jun 7, 2013, 4:48:25 AM6/7/13
to comuni...@googlegroups.com
Y ahora si, contesto, para mi lo mejor es leer el archivo (fopen, fread), y ahi con la funcion explode creo que liquidas el problema.
Primero hace uyn explode por el '=' y te va dar un array de strings, con un elemento por cada linea del archivo
Luego, por cada uno hace un explode por el espacio en blanco ' ' y tenes un array con los elementos para usarlos como quieras

Daniel Carrero

unread,
Jun 7, 2013, 8:56:30 AM6/7/13
to comuni...@googlegroups.com
Hola,
Nada mejor que comenzar con algo de programación el día, aca puedes revisar algo de lo que te menciona agosto bloj:

<?php
// leyendo el archivo remoto o local?
$archivo_remoto = file_get_contents('archivo.txt');
// Variables
$lineas = array();
$campos = array();
// obtenemos el arreglo de lineas
$lineas = explode('=', $archivo_remoto);
// print_r($lineas);

// Por cada linea obtenemos los campos
foreach ($lineas as $linea) {
$campos[] = explode(' ', $linea);
}
//print_r($campos);
// Tu decides donde hacer el insert a la base de datos

Revisa ese código y nos comentas como te va.

Saludos


--
--
Has recibido este mensaje porque estás suscrito a
Grupo "ComunidadPHP" de Grupos de Google.
Si quieres publicar en este grupo, envía un mensaje de correo
electrónico a programad...@googlegroups.com
Para anular la suscripción a este grupo, envía un mensaje a
programadoresde...@googlegroups.com
Para obtener más opciones, visita este grupo en
http://groups.google.com/group/programadoresdephp?hl=es.
---
Has recibido este mensaje porque estás suscrito al grupo "ComunidadPHP" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a comunidadphp...@googlegroups.com.
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
 
 



--
Daniel Carrero Canales
+56974726453

Alcides G.

unread,
Jun 25, 2013, 11:26:27 AM6/25/13
to comuni...@googlegroups.com
muy bueno el scrip y me sirbió bastante otra pregunta que depurador de código Php me recomiendan que no sea tan pesado y que pueda ver la ejecución linea por linea y visualizar valor de variables
Saludos

Para obtener más opciones, visita este grupo en
http://groups.google.com/group/programadoresdephp?hl=es.
---
Has recibido este mensaje porque estás suscrito al grupo "ComunidadPHP" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus correos electrónicos, envía un correo electrónico a comunidadphp...@googlegroups.com.
Para obtener más opciones, visita https://groups.google.com/groups/opt_out.
 
 
Reply all
Reply to author
Forward
0 new messages