Foros del Web » Programando para Internet » PHP »

Limitar el Peso del Archivo. ...Funciona pero sin etica!

Estas en el tema de Limitar el Peso del Archivo. ...Funciona pero sin etica! en el foro de PHP en Foros del Web. Código PHP: <? $max_size  =  "" ;  // Limitamos en Bytes el peso del file if( $_FILES [ 'file' ][ 'size' ] >  $max_size ){ print  "Despues de una larga espera, te digo que esto no sube.. bajale el peso.-!" ; exit; } ?> Si bien ...
  #1 (permalink)  
Antiguo 13/05/2006, 16:28
Avatar de xyyy7  
Fecha de Ingreso: enero-2004
Ubicación: Maracay.-
Mensajes: 637
Antigüedad: 13 años, 10 meses
Puntos: 5
Limitar el Peso del Archivo. ...Funciona pero sin etica!

Código PHP:
<?
$max_size 
""// Limitamos en Bytes el peso del file

if($_FILES['file']['size'] > $max_size){
print 
"Despues de una larga espera, te digo que esto no sube.. bajale el peso.-!";
exit;
}
?>
Si bien es cierto que el siguiente código trabaja y cumple su función bien...
Pues creo que no es tan bueno..
Me explico por que..

Quisiera limitar a un máximo filesize, ósea chequeando el peso del archivo antes de subirlo al servidor.-

pero pasa que si quiero limitar a un máx. de 1MB el código tendría que leer todo el mega para poder decir al usuario que no se puede subir el archivo , en dado caso que pese mas de eso ( 1MB ).- eso concluye e que después de una larga espera esperando que suba el file para el sistema te diga que no se puede.-

se que seria buena un escrito : MAX. peso permitido.- 1 MB.- pero para aquellos que no le gustan leer, o tan solo por capricho de intentar subir de igual manera el file...

Bueno en FIN la cosa es no esperar toda esa lectura de 1MB, con una espera lenta o rápida dependiendo de la conexión de Internet del usuario...

Como Podríamos solucionar eso en PHP... si el file pesa 1.3 MB (Por dar un ejemplo).-
no se tenga que mamar todo ese mega (1mb que limito) para poder decirle a usuario que no se puede-

Saludos.-
__________________
Maracay Edo Aragua - Venezuela :
Mi Favorita :
http://www.MySQL.Com
  #2 (permalink)  
Antiguo 13/05/2006, 16:52
 
Fecha de Ingreso: mayo-2006
Mensajes: 242
Antigüedad: 11 años, 7 meses
Puntos: 3
Bueno te conviene poner un aviso en el formulario de carga (Max 1 MB)
__________________
pageIMPACT
Web Hosting Automation - Fiable. Dedicado. Automatizado.
  #3 (permalink)  
Antiguo 13/05/2006, 17:04
Avatar de xyyy7  
Fecha de Ingreso: enero-2004
Ubicación: Maracay.-
Mensajes: 637
Antigüedad: 13 años, 10 meses
Puntos: 5
ya lo tengo puesto.-

Pero me gustaria ubiera un script php programado.- para lo que ando buscando.-
__________________
Maracay Edo Aragua - Venezuela :
Mi Favorita :
http://www.MySQL.Com
  #4 (permalink)  
Antiguo 13/05/2006, 17:09
 
Fecha de Ingreso: mayo-2006
Mensajes: 242
Antigüedad: 11 años, 7 meses
Puntos: 3
yo creo que no hay funcion en PHP, para lo que deseas hacer, probablemente con alguna funcion en Javascripts se pueda verificar antes el tamaño y luego permitir la carga.
__________________
pageIMPACT
Web Hosting Automation - Fiable. Dedicado. Automatizado.
  #5 (permalink)  
Antiguo 13/05/2006, 20:01
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 12 años, 3 meses
Puntos: 54
si quieres validar el peso del archivo ante de enviarlo deberas usar ActiveX con javascript hasta donde tengo entendido no se puede :(
saludos
  #6 (permalink)  
Antiguo 15/05/2006, 09:31
Avatar de xyyy7  
Fecha de Ingreso: enero-2004
Ubicación: Maracay.-
Mensajes: 637
Antigüedad: 13 años, 10 meses
Puntos: 5
Bueno ni modo.- "no se puede con php".-
...como con perl (cgi) si se puede hacer esto.- pense que con php tambien se podia realizar este proceso.-

Con respecto a la solucion planteada por emiliodeg, Amigo Gracias.. por tu aporte, pero el hecho que el usuario primero tenga que darle permisos al ActiveX para que sea ejecutado desde el javascript, ya es una gran desventaja.- pero gracias de todas maneras.-

Saludos.-
__________________
Maracay Edo Aragua - Venezuela :
Mi Favorita :
http://www.MySQL.Com
  #7 (permalink)  
Antiguo 15/05/2006, 11:31
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por xyyy7
Bueno ni modo.- "no se puede con php".-
...como con perl (cgi) si se puede hacer esto.- pense que con php tambien se podia realizar este proceso.-

Con respecto a la solucion planteada por emiliodeg, Amigo Gracias.. por tu aporte, pero el hecho que el usuario primero tenga que darle permisos al ActiveX para que sea ejecutado desde el javascript, ya es una gran desventaja.- pero gracias de todas maneras.-

Saludos.-
Bueno .. ya has visto que PHP no puede hacer ese proceso directamente. PHP "pre-procesa" todo lo que le llega .. nunca antes.

Si quieres .. usa Perl para ese tipo de cosas, por ejemplo .. para hacer un sistema para controlar lo que el usuario va subiendo (un "upload meter") se usa Perl (por qué PHP en forma nativa no tiene acceso al "raw" de datos que por HTTP van subiendo y va gestionando el servidor HTTP).

A lo que quiero llegar es que hay que conocer el lenguaje de "preferencia" que uno maneja .. pero a veces es necesario usar -otros- lenguajes para resolver ciertos problemas (y eso que lo dice un incondicional de PHP como yo .. pero hay que ser sinceros, PHP es excelente para algunas cosas y para otras no).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #8 (permalink)  
Antiguo 16/05/2006, 16:32
Avatar de xyyy7  
Fecha de Ingreso: enero-2004
Ubicación: Maracay.-
Mensajes: 637
Antigüedad: 13 años, 10 meses
Puntos: 5
Cita:
.. pero hay que ser sinceros, PHP es excelente para algunas cosas y para otras no.
En lo personal PHP es el Rey de los Lenguajes...

Solo que queria quitar esta aplicacion que tengo en perl y poner todo mi sistema bajo 100% php.-

Pero cluster es cierto el razonamiento es logico... hay que complementar con otros lenguajes.. bueno me imagino que con perl tambien habran infinidades de aplicaciones que no se pueden hacer y con php si.-

QUE VIVA! EL PHP!!!!

Saludos.-
__________________
Maracay Edo Aragua - Venezuela :
Mi Favorita :
http://www.MySQL.Com
  #9 (permalink)  
Antiguo 19/05/2006, 18:09
 
Fecha de Ingreso: agosto-2003
Mensajes: 258
Antigüedad: 14 años, 4 meses
Puntos: 3
Sopena que algo haya cambiado en la tecnología, no es posible. Por motivos de seguridad no se puede manipular un fichero del lado del cliente. Solo un lenguaje que tenga permisos para manipular esos ficheros del lado del cliente te permitiría hacer eso. Por ejemplo Java.

Google es tu amigo:
Aquí hablan de Java y de una solución ActiveX
http://forum.java.sun.com/thread.jsp...5644&tstart=60

En este otro, en el último post habla de un truco con Javascript
http://www.jguru.com/forums/view.jsp?EID=1072481

Existen applets en Java para hacer subida de ficheros que probablemente incorporaran la funcionalidad que pides.

Suerte
__________________
1234web.net
El hosting para tu web
ElSuper.com Desarrollo, diseño, ingeniería, administración
  #10 (permalink)  
Antiguo 20/05/2006, 15:00
Avatar de xyyy7  
Fecha de Ingreso: enero-2004
Ubicación: Maracay.-
Mensajes: 637
Antigüedad: 13 años, 10 meses
Puntos: 5
Bueno aqui les dejo lo que uso.-

Saludos.-
__________________
Maracay Edo Aragua - Venezuela :
Mi Favorita :
http://www.MySQL.Com
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 19:42.