Ver Mensaje Individual
  #5 (permalink)  
Antiguo 16/12/2008, 12:26
karoljose
 
Fecha de Ingreso: agosto-2008
Mensajes: 21
Antigüedad: 15 años, 8 meses
Puntos: 0
De acuerdo Respuesta: Problemas con validar upload de imagen

Hola softmaster, bueno te cuento que el tipo de archivo JPG, GIF lo puedes validar del lado del cliente, pero el tamaño de la imagen si se tiene que validar del lado del servidor.

Aqui te dejo el script para validar el tipo de archivo, es javascript:

Código:
-->Funcion que comprueba si la imagen es JPG
<script language="javascript" type="text/javascript">
function pre_comprobar(f){
var length = document.form1.elements.length;
validado=true;
fotos=0;
for (var i=0; i<length; i++) {
	if (document.form1.elements[i].type=="file" && document.form1.elements[i].value!=""){
		fotos++;
		foto=document.form1.elements[i].value;
		foto=(foto.substring(foto.lastIndexOf("."))).toLowerCase();
		if (foto!=".jpg") validado=false;
	}
}
if (validado==true && fotos>0) f.submit();
else if (validado==false) alert("Solo se admiten fotos en formato jpg,\ny al menos una foto tiene otro formato.");
else if (fotos==0) alert("Debe agregar al menos una foto.");
}
</script>

-->Boton que llama a la funcion es HTML
<input name="g_y" type="button" id="g_y" onclick="pre_comprobar(this.form)" value="Subir y Continuar" />
Del lado del servidor puedes validar tambien el tipo y tamaño con este script, lo puedes adaptar a tu necesidad:

Código PHP:
<?php
if (isset($_FILES["fotos"])){
    
$n_fot count($_FILES["fotos"]["name"]);
    for(
$i=0;$i<$n_fot;$i++){
        if (
is_uploaded_file($_FILES['fotos']['tmp_name'][$i])) {
            if ((
$_FILES['fotos']['type'][$i]=="image/jpeg") || ($_FILES['fotos']['type'][$i]=="image/pjpeg")) {
                if(
$_FILES['fotos']['size'][$i] < 716800) {            
            if(@
move_uploaded_file($_FILES['fotos']['tmp_name'][$i],'../fotos_inmuebles/'.$_REQUEST["codigo"].'_'.$j.'.jpg')){
                
$j++;
            }
                }else 
$mensaje='Archivo mayor a 700 KB.';
            }else 
$mensaje.='<br />Solo se admite formato jpeg para las im&aacute;genes.';
        }
    }
}
?>
Espero que te sea de ayuda, ese codigo yo lo utilizo en una aplicacion que desarrolle y funciona bien.

Saludos