Foros del Web » Programando para Internet » Javascript »

validar input type file

Estas en el tema de validar input type file en el foro de Javascript en Foros del Web. hola: encontré en el foro 2 cosas: 1. validar que el tipo de imagen a subir sea una determinada 2. truquillo para que no se ...
  #1 (permalink)  
Antiguo 29/06/2007, 05:31
 
Fecha de Ingreso: enero-2002
Mensajes: 838
Antigüedad: 23 años, 1 mes
Puntos: 1
validar input type file

hola:

encontré en el foro 2 cosas:

1. validar que el tipo de imagen a subir sea una determinada

2. truquillo para que no se pueda escribir en input type file.

lo primero lo hago asi:

Código PHP:
function LimitAttach(tField,iType)

    
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("\\") != -1file file.slice(file.indexOf("\\") + 1); 
    
ext file.slice(file.indexOf(".")).toLowerCase(); 
    for (var 
0extArray.lengthi++)
    { 
        if (
extArray[i] == ext)
        { 
            
allowSubmit true
            break; 
        } 
    } 
    if (
allowSubmit)
    { 
    
document.getElementById('ruta_fichero').value=document.getElementById('foto').value;
    }
    else
    { 
//        tField.value=""; 
        
document.getElementById('ruta_fichero').value="";
        
alert("Usted sólo puede subir archivos con extensiones " + (extArray.join(" ")) + "\nPor favor seleccione un nuevo archivo"); 
    } 

el problema de esto es que lo valida cuando envio el formulario y no en cuanto elijo la imagen(validar antes de envio de formulario)...¿como podria soluionar esto?

en cuanto lo segundo lo hago asi:
Código PHP:
        <div id="todoElFile">
          <
input style="width:0px;position:absolute;left:185px;top:199px;height:16px;font-size:10px;border:solid 1px;border-color: #666666;" type="file" name="foto" id="foto" onblur="LimitAttach(this,1) ">
          <
input type="text" style="width:70px;height:16px;font-size:10px;border:solid 1px;border-color: #666666;" readonly name="ruta_fichero">
        </
div
el problema de este es que no me mete el valor del campo file en el campo text hasta que valido...y querrria que se hiciera cuando elijo la imagen tambien..

conclusion:

lo ideal seria

campo tipo text read only.
pulsar sobre examinar y elegir imagen
si la imagen no es correcta-> error...
si la imagen es correcta -> se mete el valor de la imagen elegida en el input text y se acabo.

no se si me explique bien...

gracias, un saludo
__________________
Muchas gracias, saludos.
  #2 (permalink)  
Antiguo 29/06/2007, 07:18
 
Fecha de Ingreso: enero-2002
Mensajes: 838
Antigüedad: 23 años, 1 mes
Puntos: 1
Re: validar input type file

ya está¡¡

al final lo de no poder escribir sobre el campo file lo solucione poniendo una capa encima...una chapuzilla pero de momento...

un saludo
__________________
Muchas gracias, saludos.
  #3 (permalink)  
Antiguo 30/06/2007, 00:11
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 10 meses
Puntos: 1284
Re: validar input type file

Hola:

Tal vez te ayude este artículo: Revisar las imágenes antes de subirlas

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 30/06/2007, 10:01
Avatar de MaBoRaK  
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 2.003
Antigüedad: 21 años, 9 meses
Puntos: 35
Re: validar input type file

loading...........


Cita:
el problema de esto es que lo valida cuando envio el formulario y no en cuanto elijo la imagen(validar antes de envio de formulario)...¿como podria soluionar esto?
Pones el evento onchange

<input style="width:0px;position:absolute;left:185px;top: 199px;height:16px;font-size:10px;border:solid 1px;border-color: #666666;" type="file" name="foto" id="foto" onchange="LimitAttach(this,1) ">

Debería solucionarte el problema.


connection closed.
__________________

Maborak Technologies
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:32.