Foros del Web » Programando para Internet » PHP »

lectura de archivo

Estas en el tema de lectura de archivo en el foro de PHP en Foros del Web. HOla, tengo una duda, que realmente no me se la respuesta, unos usuarios a los cuales le he dado permiso me crean unos arhivos en ...
  #1 (permalink)  
Antiguo 25/08/2003, 09:34
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 15 años, 5 meses
Puntos: 0
lectura de archivo

HOla,

tengo una duda, que realmente no me se la respuesta,
unos usuarios a los cuales le he dado permiso me crean unos arhivos en excel, y lo graban en formato cvs, por los tanto los datos me quedan separados por como ejemplo

Juan,24,Brazil,Sao Paolo
Luis,21,Chile, Santiago

entonces quiero q el usuario vea un formulario y que salga el boton examinar, al presionar sobre el boton examinar ira a buscar el archivo que el ha guardado en su disco duro y presionara CONTINUAR, el hecho de continuar (aqui es donde nose hacerlo) hara q tome el archivo, lo lea y traspase su contenido a la base de datos...

he buscado y he probado ejemplos, pero lo unico q he encontrado es cuando uno lee el archivo q esta en el servidor(osea ya esta en nuestro sitio), pero lo que quiero es q el busque el archivo y su contenido sea pasado a una BD...

necesito solo como hacer eso de q tome ese archivo y lo lea, lo q corresponde al formulario y al ingreso a la base de datos lo doy por sabido...

Gracias de Antemano...
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #2 (permalink)  
Antiguo 25/08/2003, 10:35
Avatar de eft0  
Fecha de Ingreso: junio-2003
Ubicación: Santiago - Chile
Mensajes: 635
Antigüedad: 14 años, 6 meses
Puntos: 8
http://www.php.net/fgetcsv

Con esta funcion, lees el archivo, y lo deja en un array, po lo demas, haces un for, y los insert correspondientes, no es complicado, hize lo mismo, pero en una BD Oracle, de la misma forma, archivo CSV para carga de datos, y un script en PHP, que hacia todo lo demas, lectura, comprobacion, y carga.

Si quieres, te lo envio.
  #3 (permalink)  
Antiguo 25/08/2003, 10:39
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 15 años, 5 meses
Puntos: 0
emm si es ese el ejemplo q he visto... pero me cabe la duda... ya q nose si es lo mismo...

pq ahi le indico la ruta donde esta, pero como lo voy a buscar si no existe en el server y solo en el CLIENTE, osea q me tome el archivo del usuario y sin subirlo solo q lo busque lo lea y lo grabe...

ahi estoy confundido!!
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #4 (permalink)  
Antiguo 25/08/2003, 10:46
Avatar de eft0  
Fecha de Ingreso: junio-2003
Ubicación: Santiago - Chile
Mensajes: 635
Antigüedad: 14 años, 6 meses
Puntos: 8
Claramente entonces, tienes que hacer un formulario de envio, para que suban el archivo a travez de ese formulario que tienes que hacer, no es necesario que lo guardes en alguna parte del servidor, sino que, solo como archivo temporal.

Despues de eso lo lees el archivo con la funcion getcsv, y lo procesas respectivamente.

No se en que te complicas tanto...
  #5 (permalink)  
Antiguo 25/08/2003, 10:49
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 15 años, 5 meses
Puntos: 0
entonces ahi esta mi problema, nose guardar el archivo como temporal...

pense q lo podia leer asi...

por ejemplo en el phpmyadmin uno tiene examinar y va a buscar el sql, una vez encontrado le pone SIGA y ejecuta todos los query q estan en su interior...
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #6 (permalink)  
Antiguo 25/08/2003, 10:55
Avatar de eft0  
Fecha de Ingreso: junio-2003
Ubicación: Santiago - Chile
Mensajes: 635
Antigüedad: 14 años, 6 meses
Puntos: 8
Eso esta definido en el PHP.INI, de todas formas te pongo un ejemplo basico para que lo ejecutes y ves que tal.

Código PHP:
function get_csv($file_csv)
{
    
$fp fopen ($file_csv,"r");
    while (
$data fgetcsv ($fp1000";")) {
    .
    . 
// proceso de lectura CSV (ejemplos que encontraste)
    
// y supongo probaste y sabes como funciona.
    
// aqui mismo es donde debes hacer la carga de datos.
    
// ex:
$cursor_insert ora_open($conn);
                    
$update "UPDATE producto SET COD_LINEA_NEGOCIO='$data[1]'$
                    $update .= "
COD_TIPO_PRODUCTO='$data[2]'COD_LINEA_PRODUCT$
                    
$update .= "COD_ITEM='$data[4]', COD_BARRA='$data[5]', DES_$
                    $update .= "
DES_LARGA='$data[7]'UNIDAD_MEDIDA='$data[8]',$
                    
$update .= "AUDITORIA='$data[10]', STS='$data[11]' WHERE CO$
                    $update_query = ora_parse($cursor_insert, $update);

}

<form method="
post" enctype="multipart/form-data">
Seleciona Archivo CSV: <input type="
file" name="file_csv">
</form> 
Bueno y eso, no es para nada complejo, saludos.
  #7 (permalink)  
Antiguo 25/08/2003, 11:01
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 15 años, 5 meses
Puntos: 0
ok... probare para ver que pasa...

ese ejemplo lo sacaste del manual o de alguna pagina?
pq si es de una pagina te agradeceria que me dieses el link (me refiero a la parte del fomulario)...
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #8 (permalink)  
Antiguo 25/08/2003, 11:04
Avatar de eft0  
Fecha de Ingreso: junio-2003
Ubicación: Santiago - Chile
Mensajes: 635
Antigüedad: 14 años, 6 meses
Puntos: 8
Bueno, ese codigo me lo se de memoria, pero si buscamos en San Google, creo que tu respuesta puede estar en:

http://www.maestrosdelweb.org/editorial/upphp/

Salu2 ;)
  #9 (permalink)  
Antiguo 25/08/2003, 11:06
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 15 años, 5 meses
Puntos: 0
ok jejje grax!!
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
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 17:35.