Foros del Web » Programando para Internet » PHP »

Validar Tamaño archivo Upload

Estas en el tema de Validar Tamaño archivo Upload en el foro de PHP en Foros del Web. Ojala me puedan ayudar, Tengo el siguiente problema, el tamaño maximo que permito para subir un archivo dentro del sistema es de 20 MB, pero ...
  #1 (permalink)  
Antiguo 02/11/2011, 07:42
 
Fecha de Ingreso: noviembre-2011
Mensajes: 55
Antigüedad: 12 años, 5 meses
Puntos: 3
Validar Tamaño archivo Upload

Ojala me puedan ayudar,

Tengo el siguiente problema, el tamaño maximo que permito para subir un archivo dentro del sistema es de 20 MB, pero debo validar que si el usuario carga uno mayor (30 MB) avisarle por mensaje que no podra subir su archivo.

ya logre caprturar en una variable el valor definido en el php.ini para "upload_max_filesize".

Ahora como puedo capturar el peso del archivo seleccionado??

Saludos y desde ya se agradece cualquier ayuda
  #2 (permalink)  
Antiguo 02/11/2011, 08:01
Avatar de tomark4  
Fecha de Ingreso: septiembre-2007
Mensajes: 154
Antigüedad: 16 años, 6 meses
Puntos: 29
Respuesta: Validar Tamaño archivo Upload

Yo lo hago esta forma, en este caso yo solo dejo subir imagenes que pesen menos de 50k

Código PHP:
Ver original
  1. <?php
  2. $size = $_FILES[imagen][size]/1000;        
  3. if ($size>500){
  4. $mensaje = "archivo muy pesado";
  5. header("location: consulta_libros.php?mensaje=$mensaje");
  6. }
  7. ?>
__________________
"Todos somos ignorantes, pero no todos ignoramos las mismas cosas"

http://www.pctec21.blogspot.com
http://www.pctec21.com
  #3 (permalink)  
Antiguo 02/11/2011, 08:02
 
Fecha de Ingreso: agosto-2011
Ubicación: España
Mensajes: 445
Antigüedad: 12 años, 7 meses
Puntos: 89
Respuesta: Validar Tamaño archivo Upload

$_FILES['userfile']['size']
  #4 (permalink)  
Antiguo 02/11/2011, 08:19
 
Fecha de Ingreso: noviembre-2011
Mensajes: 55
Antigüedad: 12 años, 5 meses
Puntos: 3
Respuesta: Validar Tamaño archivo Upload

Si probe con esa forma, pero como mi post_max_size tambien lo tengo en 20MB no permite enviar el archivo de 30 MB por lo cual, no alcanzo a llegar a esa instacia de validación.

Pero de todos modos necesito obtener de otra forma ese tamaño del archivo seleccionado.

Cuando le doy al boton enviar del formulario, se queda cargando por n tiempo. hasta qe al final se cae por el tiempo de ejecucion de un script.

A todo esto, el usuario puede llegar un archivo de 100 MB....

Saludos y gracias por sus respuestas.
  #5 (permalink)  
Antiguo 02/11/2011, 10:40
 
Fecha de Ingreso: noviembre-2011
Mensajes: 55
Antigüedad: 12 años, 5 meses
Puntos: 3
Respuesta: Validar Tamaño archivo Upload

Con Jquery o javascript sera posible?

alguien ha hecho esto antes??
  #6 (permalink)  
Antiguo 02/11/2011, 10:42
Avatar de tomark4  
Fecha de Ingreso: septiembre-2007
Mensajes: 154
Antigüedad: 16 años, 6 meses
Puntos: 29
Respuesta: Validar Tamaño archivo Upload

date un paseito por ajaxrain ahi tienes varios upload de archivos realizados con ajax
__________________
"Todos somos ignorantes, pero no todos ignoramos las mismas cosas"

http://www.pctec21.blogspot.com
http://www.pctec21.com
  #7 (permalink)  
Antiguo 02/11/2011, 15:34
Avatar de gustavopino  
Fecha de Ingreso: septiembre-2011
Ubicación: venezuela
Mensajes: 152
Antigüedad: 12 años, 7 meses
Puntos: 29
Respuesta: Validar Tamaño archivo Upload

si hay varios upload pero todo esto lo que hacen es simular un upload y con javascript tengo entendido que no puedes saber cuanto pesa un archivo todo lo haces con lenguaje del lado del servidor
Espero no equivocarme...
__________________
Visita a Publiventa donde compras y vendes de todo
  #8 (permalink)  
Antiguo 02/11/2011, 15:46
Avatar de JuJoGuAl  
Fecha de Ingreso: julio-2009
Ubicación: Venezuela
Mensajes: 754
Antigüedad: 14 años, 8 meses
Puntos: 19
Respuesta: Validar Tamaño archivo Upload

Cita:
Iniciado por prcarreno Ver Mensaje
Con Jquery o javascript sera posible?

alguien ha hecho esto antes??

ok amigo mira si tu php no deja subir archivos de mas de 20mb el sistema no lo aceptara por defecto ahora bien si quieres que en algun momento salga el mensaje ARCHIVO MUY GRANDE, oviamente tienes que aumentar el limite de peso que permite pasar php para que cuando en tu codigo el detecte que el archivo excede de los 20 mb reciva un mensaje,

el php se tarda puesto que estas subiendo nada mas y nada menos que 20 mb, hay una opcion en PHP q te permite aumentar la memoria que un archivo php procesa,

revisa en el manual estas funciones:

Código PHP:
Ver original
  1. ini_set("memory_limit","100M");
  2. /ini_set('post_max_size','100M');
  3. ini_set('upload_max_filesize','100M');

yo las use en mi archivo (donde subo imagenes grandes)
  #9 (permalink)  
Antiguo 02/11/2011, 19:27
Avatar de gustavopino  
Fecha de Ingreso: septiembre-2011
Ubicación: venezuela
Mensajes: 152
Antigüedad: 12 años, 7 meses
Puntos: 29
Respuesta: Validar Tamaño archivo Upload

Tambien puedes usar apple de java para subir archivos.
__________________
Visita a Publiventa donde compras y vendes de todo
  #10 (permalink)  
Antiguo 02/11/2011, 22:11
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Validar Tamaño archivo Upload

@gustavopino, creo que te refieres a un Applet...
  #11 (permalink)  
Antiguo 03/11/2011, 06:09
 
Fecha de Ingreso: noviembre-2011
Mensajes: 55
Antigüedad: 12 años, 5 meses
Puntos: 3
Respuesta: Validar Tamaño archivo Upload

Se agradece a todos sus respuestas :)

Pero creo que para esto no tengo una solucion... no puedo usar un applet ya que esta listo todo el sistema de carga, solo faltaba esa validacion de tamaño.

Aumentar los parametros de php.ini tampoco me sirve, dado que los archivos iran creciendo siempre, y necesitaba indicarle al usuario que su archivo pesaba X MB.

Saludos!
  #12 (permalink)  
Antiguo 03/11/2011, 08:06
Avatar de gustavopino  
Fecha de Ingreso: septiembre-2011
Ubicación: venezuela
Mensajes: 152
Antigüedad: 12 años, 7 meses
Puntos: 29
Respuesta: Validar Tamaño archivo Upload

Si amigo GatorV me equivoque gracias por corregirme
__________________
Visita a Publiventa donde compras y vendes de todo
  #13 (permalink)  
Antiguo 01/08/2012, 09:19
 
Fecha de Ingreso: agosto-2006
Ubicación: Girardot
Mensajes: 27
Antigüedad: 17 años, 8 meses
Puntos: 2
De acuerdo Respuesta: Validar Tamaño archivo Upload

Hola, antes que nada tienes que trabajar el pluggin jQuery Validation. El cual está en la dirección [URL="http://jquery.bassistance.de/validate/jquery-validation-1.9.0.zip"]http://jquery.bassistance.de/validate/jquery-validation-1.9.0.zip[/URL] .

Bueno hecho eso te sugiero que crees un archivo llamado comprobar.php de la siguiente manera:

<?php
$parametro = $_GET['fileupload']; //aquí el nombre del campo inputfile
//Tamaño del archivo a validar
if ($parametro <= 4000) {
echo "false";
} else {
echo "true";
}
?>

Después de esto creas el formulario de carga upload.php, y colocas estas líneas de java script:

<script src="jquery-1.7.1.min.js"></script>
<script src="jquery.validate.js"></script>
<script src="messages_es.js"></script>
<script type="text/javascript">
$("document").ready(function(){
$("#frm").validate({
rules:{
fileupload: { required: true,
accept: ".jpe|jpeg|jpg",
remote: "comprobar.php"
}
},
messages:{
fileupload: {
accept: "Por favor, solo archivos con extensi&oacute;n: .jpe, .jpeg, .jpg.",
remote: "Tama&ntilde;o del archivo muy pesado!"
}

}
});
});
</script>

Nota: messages_es.js, es el script de los mensajes de error en español

Etiquetas: tamaño, upload, variables, usuarios
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 17:30.