Foros del Web » Programando para Internet » Javascript »

Ayudenme con el objeto FILE de un formulario

Estas en el tema de Ayudenme con el objeto FILE de un formulario en el foro de Javascript en Foros del Web. Hola con todos Saben estoy programando con codigo del lado del cliente y tengo un formulario en donde subo archivos al servidor, y necesito Validar ...
  #1 (permalink)  
Antiguo 30/01/2006, 12:33
 
Fecha de Ingreso: diciembre-2004
Mensajes: 133
Antigüedad: 19 años, 4 meses
Puntos: 0
Ayudenme con el objeto FILE de un formulario

Hola con todos

Saben estoy programando con codigo del lado del cliente y tengo un formulario en donde subo archivos al servidor, y necesito Validar el campo "archivo", he buscado pero no encuentro como puedo validar el campo FILE de un formulario...

<form name="frmupload" method="post" action="upload.asp" enctype="multipart/form-data">
<input type="file" name="archivo">
<input type="submit">
</form>


El archivo "upload.asp" se encarga de recoger lo que deseo subir al servidor, y como sabran mi formulario trabaja con "multipart/form-data" por lo tanto no me funciona el "REQUEST" por eso no puedo validar este campo (file) utilizando codigo de lado de servidor..

Espero que alguien me pueda ayudar en esto,,,, gracias
  #2 (permalink)  
Antiguo 30/01/2006, 13:36
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola yesmina

Si lo que quieres validar es que el archivo tenga la extensión adecuada, tienes un código en las FAQs:

http://www.forosdelweb.com/f13/faqs-javascript-indice-tematico-117856/

Si no es eso, dinoslo a ver que puede hacerse.

Saludos,
  #3 (permalink)  
Antiguo 01/02/2006, 09:05
 
Fecha de Ingreso: diciembre-2004
Mensajes: 133
Antigüedad: 19 años, 4 meses
Puntos: 0
Si gracias eso era lo que yo queria, aca les pongo todo el codigo para la validacion de un campo TYPE = 'FILE'

<script type="text/javascript">
function verificar(tField,iType) {
if (document.frmupload["archivo"].value.length < 1){
alert('NO HAS INGRESADO NADA');
}
else{
file=tField.value;
if (iType==1) {
extArray = new Array(".gif",".jpg",".png");
}
if (iType==2) {
extArray = new Array(".swf");
}
if (iType==3) {
extArray = new Array(".exe",".sit",".zip",".tar",".swf",".mov",". hqx",".ra",".wmf",".mp3",".qt",".med",".et");
}
if (iType==4) {
extArray = new Array(".mov",".ra",".wmf",".mp3",".qt",".med",".et ",".wav");
}
if (iType==5) {
extArray = new Array(".html",".htm",".shtml");
}
if (iType==6) {
extArray = new Array(".doc",".xls",".ppt");
}
allowSubmit = false;
if (!file) return;
while (file.indexOf("\\") != -1) file = file.slice(file.indexOf("\\") + 1);
ext = file.slice(file.indexOf(".")).toLowerCase();
for (var i = 0; i < extArray.length; i++) {
if (extArray[i] == ext) {
allowSubmit = true;
break;
}
}
if (allowSubmit) {
} else {
tField.value="";
alert("Usted sólo puede subir archivos con extensiones " + (extArray.join(" ")) + "\nPor favor seleccione un nuevo archivo");
}
}
}
</script>


<form name="frmupload" method="post" action="upload.asp" enctype="multipart/form-data">
<input type="file" name="archivo">
<input type="button" onclick="verificar(frmupload.archivo,1);" value="VERIFICAR">
</form>


Haber si ah alguien le sirve de algo, GRACIAS.
  #4 (permalink)  
Antiguo 11/02/2006, 09:06
 
Fecha de Ingreso: abril-2005
Ubicación: en Santa Cruz - España
Mensajes: 429
Antigüedad: 19 años
Puntos: 1
Gracias tambien me sirvio pero ¿Se puede saber el tamaño del archivo?
  #5 (permalink)  
Antiguo 11/02/2006, 09:42
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola x_women:

Solo vale en explorer el atributo/propiedad filesize... para otros navegadores, solo lo puedes saber desde un CGI (obligando a subir el fichero para obtener esa info)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #6 (permalink)  
Antiguo 05/12/2007, 09:28
Avatar de maxi_lance  
Fecha de Ingreso: julio-2006
Ubicación: Capital Federal
Mensajes: 220
Antigüedad: 17 años, 9 meses
Puntos: 2
Re: Ayudenme con el objeto FILE de un formulario

Es un poco viejo el post pero acabo de probar el script y funcionar correctamente en explorer pero en el firefox me corta la ruta total...
me muestra "captura.jpg" en vez de "C:\Documents and Setting\......\Escritorio\capturas.jpg"

hay algun codigo para agregarle al script y que me tome la ruta completa ?
  #7 (permalink)  
Antiguo 05/12/2007, 09:36
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Ayudenme con el objeto FILE de un formulario

Cita:
Iniciado por maxi_lance Ver Mensaje
Es un poco viejo el post pero acabo de probar el script y funcionar correctamente en explorer pero en el firefox me corta la ruta total...
me muestra "captura.jpg" en vez de "C:\Documents and Setting\......\Escritorio\capturas.jpg"

hay algun codigo para agregarle al script y que me tome la ruta completa ?
Hola:

Los navegadores no tienen porqué informar la estructura de carpetas de los usuarios, así que es correcto que no se muestre. Solo usando el envío puede obtenerse el nombre original con un lenguaje del servidor, pero es lo único necesario (y ni eso...)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #8 (permalink)  
Antiguo 05/12/2007, 09:43
Avatar de maxi_lance  
Fecha de Ingreso: julio-2006
Ubicación: Capital Federal
Mensajes: 220
Antigüedad: 17 años, 9 meses
Puntos: 2
Re: Ayudenme con el objeto FILE de un formulario

gracias caricatos por la respuesta, pero al hacer click en capturas.jpg, no me direcciona correctamente ya que no me guarda la ruta completa en la tabla de la BD....

y por eso necesitaba que lo muestre como lo hace el explorer, para que pueda direccionar correctamente a la url....

espero puedan darme una mano
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:21.