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: 24 años, 9 meses
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("\\") != -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)
    { 
    
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: 24 años, 9 meses
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: 24 años, 5 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: 23 años, 5 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 13:39.