Foros del Web » Programando para Internet » PHP »

Cómo capturar la dirección que devuelve un input tipo file

Estas en el tema de Cómo capturar la dirección que devuelve un input tipo file en el foro de PHP en Foros del Web. HOLA QUE TAL COMPAÑEROS NECESITO AYUDA EN ESTE FORMULARIO. ESTE FORMULARIO IMPORTA DATOS DESDE UN ARCHIVO .CSV A LA BASE DE DATOS MYSQL MEDIANTE EL.. ...
  #1 (permalink)  
Antiguo 07/10/2010, 09:55
 
Fecha de Ingreso: octubre-2010
Mensajes: 8
Antigüedad: 14 años, 1 mes
Puntos: 0
Pregunta Cómo capturar la dirección que devuelve un input tipo file

HOLA QUE TAL COMPAÑEROS NECESITO AYUDA EN ESTE FORMULARIO.
ESTE FORMULARIO IMPORTA DATOS DESDE UN ARCHIVO .CSV A LA BASE DE DATOS MYSQL MEDIANTE EL..

LOAD DATA LOCAL INFILE 'C:\Users\Documents\Desktop\archivo.csv'
INTO TABLE probando FIELDS TERMINATED BY ','");


EL PRINCIPAL PROBLEMA ES QUE QUIERO DAR LA RUTA DEL ARCHIVO MEDIANTE UN INPUT FILE PERO NO HE ENCONTRADO LA MANERA DE OBTENER LA DIRECCION COMPLETA QUE SE DESPLIEGA EN EL INPUT FILE PARA ASI ASIGNARLA A UNA VARIABLE Y SOLO COLOCAR LA VARIABLE DE ESTA MANERA...

LOAD DATA LOCAL INFILE '$variable'
INTO TABLE probando FIELDS TERMINATED BY ','");

CON AYUDA DE
<input type="file" name="Archivo" value="Examinar">

ALGUIEN PUEDE DECIRME COMO PORFAVOR
  #2 (permalink)  
Antiguo 07/10/2010, 10:08
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 9 meses
Puntos: 96
Respuesta: Cómo capturar la dirección que devuelve un input tipo file

Saludos

Para hacer lo que solicitas, necesitas primero cargar el archivo en un carpeta que tengas en el servidor, seguido de ello si utilizar la funcion load data de mysql.

Hasta Pronto
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #3 (permalink)  
Antiguo 07/10/2010, 10:11
Avatar de egepe  
Fecha de Ingreso: diciembre-2009
Mensajes: 310
Antigüedad: 14 años, 11 meses
Puntos: 7
Respuesta: Cómo capturar la dirección que devuelve un input tipo file

En tu etiqueta <form> colocaste esto: enctype="multipart/form-data" porque es la forma de decirle que posiblemente haya un campo tipo file y el en ese input te guarda todo otra cosa, recuerda que esos campos no son guardado ni en post ni get sino el $_FILES

Espero que te sirva saludos
  #4 (permalink)  
Antiguo 07/10/2010, 10:14
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 19 años, 5 meses
Puntos: 88
Respuesta: Cómo capturar la dirección que devuelve un input tipo file

aqui tienes como hacerlo en ie8, en otros navegadores no he revisado, pero es configuracion manual:
1.-ve a Herramientas>Opciones de Internet
2. en la pestaña Seguridad, con el icono de Internet seleccionado haz click en al opción nivel perzonalizado y busca:
"Incluir la ruta de acceso al directorio local cuando se carguen archivos a un servidor" y también, "Permitir la ejecución de Scrips en el control del explorador web de internet explorer". aceptas todo y listo para funcionar en IE
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #5 (permalink)  
Antiguo 07/10/2010, 10:30
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 9 meses
Puntos: 96
Respuesta: Cómo capturar la dirección que devuelve un input tipo file

Saludos

Las solucion que te indica egepe

Cita:
En tu etiqueta <form> colocaste esto: enctype="multipart/form-data" porque es la forma de decirle que posiblemente haya un campo tipo file y el en ese input te guarda todo otra cosa, recuerda que esos campos no son guardado ni en post ni get sino el $_FILES
Te puede servir para realizar el cargue del archivo al servidor mas no para hacerlo directamente con load data. En tanto a la indicacion que te da eits

Cita:
aqui tienes como hacerlo en ie8, en otros navegadores no he revisado, pero es configuracion manual:
1.-ve a Herramientas>Opciones de Internet
2. en la pestaña Seguridad, con el icono de Internet seleccionado haz click en al opción nivel perzonalizado y busca:
"Incluir la ruta de acceso al directorio local cuando se carguen archivos a un servidor" y también, "Permitir la ejecución de Scrips en el control del explorador web de internet explorer". aceptas todo y listo para funcionar en IE
No es la solucion indicada para este caso. Ahi qeu tener en cuenta que la funcion load data es un comando de mysql tiene la funcionalidad de cargar de archivos a una tabla de forma mas rapida, el archivo a cargar debe tener la misma cantidad de columnas que la tabla y se debe indicar el separador del archivo al igual de que la ubicacion donde se encuentra, esta ubicacion debe estar local en tu servidor y no la ubicacion del cliente por lo tanto es necesario subir primero el archivo a tu servidor, realizar las validacion de que cumpla con el numero de columnas y luego si realizar el cargue a la base de datos con load data.

Hasta Pronto!
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #6 (permalink)  
Antiguo 07/10/2010, 10:37
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 19 años, 5 meses
Puntos: 88
Respuesta: Cómo capturar la dirección que devuelve un input tipo file

bien, yo supongo que lo esta haciendo desde el mismo equipo, es por esa razón que le indique esa forma, y queria tener algo como esto 'C:\Users\Documents\Desktop\archivo.csv'.

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #7 (permalink)  
Antiguo 10/10/2010, 09:16
 
Fecha de Ingreso: octubre-2010
Mensajes: 8
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Cómo capturar la dirección que devuelve un input tipo file

Muchas gracias compaÑeros de verdad que me han ayudado bastante.....
En cuanto tenga una solucion la voy publicar... Que la pasen bien ..

Etiquetas: file, input, tipo
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 22:04.