Nuevas NORMAS para el foro

Curso Hacker
Bienvenido(a), Visitante. Favor de ingresar o registrarse. - Mayo 16, 2008, 10:42:10
Boton Buscar
Inicio Ayuda Calendario Ingresar Registrarse
Visita: Articulos - Juegos Gratis - Da Foros

Comunidad Underground Hispana  |  Programacion  |  Programacion para webmasters  |  Php (Moderadores: RuB, SaTeLuCo)  |  Tema: subir archivos a mysql 0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: subir archivos a mysql  (Leído 37 veces)
JUCA
Habitual
*****
Desconectado Desconectado

Mensajes: 374

www.hackeruna.com

juca@xasamail.com
Ver Perfil WWW Email
« en: Mayo 05, 2008, 12:00:30 »

Bueno el problema es que no tienen un formato definido estos .txt es decir no estan separados por ; o por |

El archivo tiene el siguiente formato:
Hay que tomar en cuenta que los numeros de la izquierda que son secuenciales son los numeros de linea.
Bueno la idea es que debo eliminar todos los registros incluso las lineas en blanco y desde la linea 12 utilizar los registros y esos mismos guardarlos en una base de datos.
En un campo la hora, en otro el nombre y en otro el telefono.



1
2
3  ROBERTO HUERTA
5  ROBERTO HUERTA                               November 25 - November 30, 2007
6
7  Time   Name                  Phone        Length       Notes
8
9         Chart Number          Resource     Reason       Repeat Description
10  Monday, November 26, 2007
11
12  8:30a  GONZALO, GONZALEZ         593123456                                                         
14  9:00a  GONZALO, GONZALEZ         593123456
15  9:00a  GONZALO, GONZALEZ         593123456
16
17  9:00a  GONZALO, GONZALEZ         593123456
18  9:15a  GONZALO, GONZALEZ         593123456
19
20  9:15a  GONZALO, GONZALEZ         593123456
21
22  9:15a  GONZALO, GONZALEZ         593123456
23  9:30a  GONZALO, GONZALEZ         593123456


Alguien a podido solucionar un problema parecido alguien me puede dar una mano con esto??
Pero sui es la ayuda con codigo mejor. Con todo seguire haciendo si consigo solucionarlo lo posteo.



Saludos
JUCA
En línea

"Uno no comprende completamente algo hasta que se lo puede explicar a su abuela" Albert Einstein





Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Foko
Habitual
*****
Desconectado Desconectado

Mensajes: 248


Primero Racing, Despues Existo

fokokofo@hotmail.com
Ver Perfil WWW
« Respuesta #1 en: Mayo 05, 2008, 12:18:02 »

Nose bien que queres, pero si queres hacer una tabla con eso es facil

Código:
CREATE TABLE tabla1 (
ID INT UNSIGNED NOT NULL AUTO_INCREMENT ,
Time VARCHAR(12) NOT NULL ,
Name VARCHAR(100) NOT NULL ,
Phone VARCHAR(12) NOT NULL ,
PRIMARY KEY (ID)
)

Para colocar los datos

Código:
INSERT INTO tabla1 ( ID , Time , Name , Phone )
VALUES (
'', '8:30a', 'GONZALO, GONZALEZ', '593123456');
En línea


Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion


"Mas alla de la Logica, Mas alla de la Razon,
Te entrego mi Vida y mi Corazon"  La Guardia imperial.
JUCA
Habitual
*****
Desconectado Desconectado

Mensajes: 374

www.hackeruna.com

juca@xasamail.com
Ver Perfil WWW Email
« Respuesta #2 en: Mayo 05, 2008, 12:27:21 »

Lo que acagbas de poner lo tengo claro ahora lo que yo necesito es hacer un porgrama .php que haga eso automaticamente.
Osea antes del insert debo trabajar esos datos y hacer que se inserten solo esos datos pero la tabla tiene mas campos.

Osea la idea no es insertar estos registros uno por uno de todos modos gracias.

Saludos
JUCA
En línea

"Uno no comprende completamente algo hasta que se lo puede explicar a su abuela" Albert Einstein





Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
SaTeLuCo
Moderadores
Habitual
*****
Desconectado Desconectado

Mensajes: 344

Web Developer


Ver Perfil WWW
« Respuesta #3 en: Mayo 05, 2008, 12:28:48 »

lo que quieres es importar ese archivo a la base de datos, extraer los registros del archivo de textos y meterlos a la base?

Si es asi, puedes usar explode(), preg_match(), divides la cadena con expresiones regulares, ejemplo para dividir lineas:

Código:
<?php
$texto 

"Una mañana
me desperte
cansado y curdo"
;
$lineas explode("\n",$texto);
print_r($lineas);
?>


Lo mismo con lo demas te recomiendo leer un poco sobre expresiones regulares son muy utiles y no solo en PHP

saludos!
En línea



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion

rOnNyLdInHoâ„¢
Colaborador
*****
Desconectado Desconectado

Mensajes: 523


Ver Perfil Email
« Respuesta #4 en: Mayo 05, 2008, 12:31:24 »

Igual que el compañero Sateluco, creo que la función primordial que debes de aprender es explode();

Cuando la estudies podras comparar los patrones y las variabels independientes.

Si tienes alguna duda, puedes postear que aqui te ayudaremos!
En línea



Yo también les recomiendo Ubuntu Tongue
JUCA
Habitual
*****
Desconectado Desconectado

Mensajes: 374

www.hackeruna.com

juca@xasamail.com
Ver Perfil WWW Email
« Respuesta #5 en: Mayo 05, 2008, 12:34:44 »

Por ahi si va la cosa como dices creo que aca ya entra lo de expresiones regulares.
De ahi logicamente en el programa actual abro el archivo de texto lo recorro y todas las lineas que estan con espacio en blanco las meto en un arreglo .
Talvez lo que estoy confundido es en la logica nada mas.
Desde luego estoy utilizando un explode dentro de un while ahsta en fin de archivo.

Bueno me voy a ver expresiones regulares.

Saludos
JUCA
En línea

"Uno no comprende completamente algo hasta que se lo puede explicar a su abuela" Albert Einstein





Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
JUCA
Habitual
*****
Desconectado Desconectado

Mensajes: 374

www.hackeruna.com

juca@xasamail.com
Ver Perfil WWW Email
« Respuesta #6 en: Mayo 05, 2008, 12:58:18 »

Mira el programa esta asi :

Código:
<?php

$file 
"probando.txt";
 
$fp fopen($file,"r");
 
$line fgets($fp); // descarto la primer linea

while (!feof($fp)) {
 
$line fgets($fp);
 
$aline explode(" ",$line);
 print
"<pre>";
 
print_r ($aline);
 print
"</pre>";
}


con esto salen todos los datos del archivo y no necesito que esten en el arreglo todos solo necesito que esten los de este tipo:

8:30a  GONZALO, GONZALEZ         593123456
9:30a  GONZALO, GONZALEZ         593123456

Y pues luego de esto viene la otra parte pero en que parte es donde puedo preguntar para que solo queden estos datos??

Me explique bien ?

Bueno espero su ayuda

Saludos
JUCA

En línea

"Uno no comprende completamente algo hasta que se lo puede explicar a su abuela" Albert Einstein





Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
JUCA
Habitual
*****
Desconectado Desconectado

Mensajes: 374

www.hackeruna.com

juca@xasamail.com
Ver Perfil WWW Email
« Respuesta #7 en: Mayo 05, 2008, 02:14:57 »

Con esta linea ya tengo solo los archivos que necesito:

if (preg_match("/:/", $line)) {
}

Y dentro de esto lo que quiero mostrar ahora el codigo queda asi:

Código:
<?php

$file 
"TEST3.txt";

$contenido file $file );
 
$fp fopen($file,"r");
 
$line fgets($fp); // descarto la primer linea

while (!feof($fp)) {
  
$line fgets($fp);
  if (
preg_match("/:/"$line)) {
  print 
"<pre>";
  print 
$line;
  print 
"</pre>";
  
$aline explode(" ",$line);
  }
}
?>

Pero me doy cuenta que al final del archivo existe una linea de este tipo:

Printed  11/29/2007 9:53 am

Porque este registro tambien tiene el patron que busco.
Ahora como hago para quitar solo esa linea a alguien se le ocurre algo?

Saludos
JUCA
En línea

"Uno no comprende completamente algo hasta que se lo puede explicar a su abuela" Albert Einstein





Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
SaTeLuCo
Moderadores
Habitual
*****
Desconectado Desconectado

Mensajes: 344

Web Developer


Ver Perfil WWW
« Respuesta #8 en: Mayo 05, 2008, 02:19:59 »

te recomiendo que no actues dentro del bucle solo recoje los datos y despues los procesas con mas calma

Código:
<?php
while(){
$datos .= $buffer;
}
?>


Asi evitas errores
En línea



Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion

JUCA
Habitual
*****
Desconectado Desconectado

Mensajes: 374

www.hackeruna.com

juca@xasamail.com
Ver Perfil WWW Email
« Respuesta #9 en: Mayo 05, 2008, 03:14:05 »

Gracias buena sugerencia.

Saludos
JUCA
En línea

"Uno no comprende completamente algo hasta que se lo puede explicar a su abuela" Albert Einstein





Para ver los enlaces debes ser usuario Crear Usuario o Hacer Sesion
Páginas: [1] Ir Arriba Imprimir 
Comunidad Underground Hispana  |  Programacion  |  Programacion para webmasters  |  Php (Moderadores: RuB, SaTeLuCo)  |  Tema: subir archivos a mysql « anterior próximo »
Ir a:  
Novedades, Dudas, Comentarios Y Sugerencias, Top 100, Off-Topic, Revista E-Zine, Revista E-Zine, Sistemas operativos libres. , HacK GeneraL, Phreaking, Bug y Exploits, Networking & Wireless, Overclocking, Refrigeracion y demas, Hardware, Electronica Y Robotica, Hack para newbies, Todo Messenger, Troyanos y virus, Programacion, Programacion para webmasters, Software, Cracks & Serialz, P2p, Bittorrent, Elinks, Diseño Grafico, Juegos PC, Mp3, Multimedia, Peliculas Divx, Juegos, Humor y Adultos. (Diversion), Paginas Webs Recomendadas, Videos,


Zona-Musical Juegos online Juego Gratis10 Solucion Hosting Videos De Musica 1juegogratis Dragonjar
Noticias
 Juegos De Coche juegos gratis online juegos Los Foros De Sexe Gratuit Sexo Duro Tierra Messenger Trucos
Ranking-Hits
Powered by SMF 1.1.5 | SMF © 2006-2007, Simple Machines LLC