Ver Mensaje Individual
  #3 (permalink)  
Antiguo 26/09/2011, 16:41
Avatar de neglivv
neglivv
 
Fecha de Ingreso: julio-2011
Mensajes: 103
Antigüedad: 12 años, 9 meses
Puntos: 11
Pregunta Respuesta: ¿Como Validar tamaño de archivo?

Gracias por tu respuesta maycolalvarez, créeme que de eso me di cuenta buscando en el foro.
Estuve TODO el santo dia buscando por aqui y por alla, pongo aca la solucion que le encontrado hasta ahora: y lo probé en todos los navegadores y funciona

Código HTML:
//partida es el id del input
		$("#partida").change(function()
		{
			$(".required9").hide();
			if (!validar_archivo(this,"jpg"))
				$(".error_par").show();
			else
				$(".error_par").hide();
		});
// la función validar_archivo ahora me quedo asi:

function validar_archivo(elem,tipo,tamanio)
{
		var archivo=document.getElementById(elem.id).value;
		var extension = (archivo.substring(archivo.lastIndexOf("."))).toLowerCase();
		//Primero validamos la extension
		if (extension!="."+tipo)
		{
			return false;
		}
		else	//Ni me preocupo por validar el tamaño si no es el tipo correcto
		{
			checkear(elem);
			
		}
		return true;
}

//y checkear es esto:
function checkear(f)	{
					actionActual = f.form.action;
					targetActual = f.form.target;
					f.form.action = "includes/validar_archivo.php";
					f.form.target = "ver";
					f.form.submit();
					f.form.action = actionActual;
					f.form.target = targetActual;
			}
... El formulario es mas o menos así:
<form id="form1" name="form1" action="includes/validar_archivo.php" enctype="multipart/form-data" method="post" onsubmit="return validar();">
<input class="required" id="partida" name="adjuntos[]" type="file" target="uploadedImage">
<div class="errores error_par" style="display:none;">El tipo de archivo debe pdf y <br>no pesar mas de 3MB.</div>
</form>
... Debajo del formulario coloque esto: 

<iframe id="ver" name="ver" style="display: block; margin: auto; border-width: 2px; width: 484px; height: 364px;"></iframe> 
En el php valido el tamaño del archivo.
Ahora mi duda es la siguiente: ¿Como hago para que en vez de desplegarse el error en el <iframe> aparezca el <div> error_par?