Foros del Web » Programando para Internet » PHP »

Subir archivos por PHP ayuda

Estas en el tema de Subir archivos por PHP ayuda en el foro de PHP en Foros del Web. Hola buenos dias Escribo para plantear la siguiente duda, En un aplicativo realizo la subida de archivos los cuales valido con $_Files el tamaño y ...
  #1 (permalink)  
Antiguo 10/11/2009, 07:55
 
Fecha de Ingreso: julio-2008
Ubicación: BOGOTA
Mensajes: 81
Antigüedad: 15 años, 10 meses
Puntos: 1
Exclamación Subir archivos por PHP ayuda

Hola buenos dias

Escribo para plantear la siguiente duda,
En un aplicativo realizo la subida de archivos los cuales valido con $_Files el tamaño y en realidad funciona a la perfeccion salvo que la Variable MAX_POST_Size no sea superada por el archivo a subir por que de esta manera no valida.

De esta forma he cambiado la variable a 20MB suponiendo que sea muy extraño que alguien suba archivos de ese peso debido a que valido extension en pdf.


Mi duda es que haciendo pruebas en el servidor web, si intento subir un archivo de 5 o mas megas, se demora demasiado haciendo la validación.

La razón es que primero sube el archivo y luego valida? me gustaría saber si en realidad se puede determinar primero el tamaño y luego validar y subir en caso correcto...

Agradezco su ayuda en este tema
  #2 (permalink)  
Antiguo 10/11/2009, 08:02
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Subir archivos por PHP ayuda

Se supone que con $_FILES["nombreDelCampo"]["size"] logres ver el tamaño del archivo. Como tambien puedes saber si excedio el tamaño usando $_FILES["nombreDelCampo"]["error"]. Visita esta pagina para que veas los diferentes tipos de errores http://php.net/manual/en/features.fi...oad.errors.php
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 10/11/2009, 08:08
 
Fecha de Ingreso: julio-2008
Ubicación: BOGOTA
Mensajes: 81
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Subir archivos por PHP ayuda

Cita:
Iniciado por abimaelrc Ver Mensaje
Se supone que con $_FILES["nombreDelCampo"]["size"] logres ver el tamaño del archivo. Como tambien puedes saber si excedio el tamaño usando $_FILES["nombreDelCampo"]["error"]. Visita esta pagina para que veas los diferentes tipos de errores http://php.net/manual/en/features.fi...oad.errors.php
Correcto,, eso es lo que uso y funciona perfectamente, a lo que me refiero es que haciendo una prueba subiendo un archivo de 4megas o mas mozilla o explorer indican que estan haciendo la peticion al servidor y tarda mucho tiempo hasta que aparece el mensaje de error, la validación la hace correctamente pero lo que quiero saber es por qué al parecer primero sube el archivo y luego determina su tamaño para validarlo.
  #4 (permalink)  
Antiguo 10/11/2009, 08:14
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Subir archivos por PHP ayuda

¿Estas usando en el formulario un campo que indique el tamaño maximo permitido?, ese campo debe tener el nombre MAX_FILE_SIZE. Sinceramente no se si con eso evitas el que se tarde en validar al pasar el tamaño sugerido, te sugiero que si no lo tienes hagas la prueba y nos dejas saber.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 10/11/2009, 08:20
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 9 meses
Puntos: 2114
Respuesta: Subir archivos por PHP ayuda

Cita:
Iniciado por juanguitar Ver Mensaje
lo que quiero saber es por qué al parecer primero sube el archivo y luego determina su tamaño para validarlo.
Para saber su peso, primero tendrá que estar en el sevidor. Tienes que pensar que PHP trabaja en el servidor, por lo que no puede saber el tamaño del archivo hasta que ese archivo esté en el servidor.
Que no sé si esto es así, pero me parece lo mas lógico.
  #6 (permalink)  
Antiguo 10/11/2009, 08:33
 
Fecha de Ingreso: julio-2008
Ubicación: BOGOTA
Mensajes: 81
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Subir archivos por PHP ayuda

Cita:
Iniciado por abimaelrc Ver Mensaje
¿Estas usando en el formulario un campo que indique el tamaño maximo permitido?, ese campo debe tener el nombre MAX_FILE_SIZE. Sinceramente no se si con eso evitas el que se tarde en validar al pasar el tamaño sugerido, te sugiero que si no lo tienes hagas la prueba y nos dejas saber.
Hola abimael,, de antemano gracias por tu atencion.
En efecto el campo max file size se agrega en el formulario como input hidden pero la verdad esto no soluciona el problema.
Estoy haciendo pruebas inclusive en servidor local con un archivo de 7megas y la verdad sale en mozilla "enviando peticion a 192....." se demora un tiempo y sale el mensaje de error, pero esto en web tarda mucho mas.
Aun planteo mi duda sobre si primero sube el archivo debido a que con javascript valida la extension instantaneamente a diferencia de la validación por tamaño en php.
  #7 (permalink)  
Antiguo 10/11/2009, 08:36
 
Fecha de Ingreso: julio-2008
Ubicación: BOGOTA
Mensajes: 81
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Subir archivos por PHP ayuda

Cita:
Iniciado por Bonez Ver Mensaje
Para saber su peso, primero tendrá que estar en el sevidor. Tienes que pensar que PHP trabaja en el servidor, por lo que no puede saber el tamaño del archivo hasta que ese archivo esté en el servidor.
Que no sé si esto es así, pero me parece lo mas lógico.
exacto,,, este es el gran interrogante...creo que esto puede servir a todos,, lo que pasó especificamente es que alguien intentó subir un archivo en una red demasiado lenta y durante el proceso se cayo la página por lo que me ha tocado inferir en otra variable que es la del máximo tiempo de ejecución de script. dicho usuario intento subir un archivo de 6megas y debido a la demora no pudo ver nunca el mensaje de error que le dice que el tamaño excede el permitido (2MB)
  #8 (permalink)  
Antiguo 10/11/2009, 08:42
 
Fecha de Ingreso: julio-2008
Ubicación: BOGOTA
Mensajes: 81
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Subir archivos por PHP ayuda

Otro punto importante es que si subo un archivo que exceda el MAX:POST_SIZE, el servidor nisiquiera entiende que debe validar. Me explico,, mi variable en php.ini de max post size es de 8Megas, en el script de subida el maximo permitido es 2megas, otro gran problema que encontre es que si subo un archivo entre 2megas y 7.9megas, valida perfectamente aunque presentando la demora enviando la petición o subiendo el archivo para determinar su tamaño y mostrar el mensaje de error,, pero si subo un archivo de 8,1megas o mas, la validación no la hace y el servidor simplemente se sale o muestra error de conexión.

en este caso no quedo otra opción qu aumentar el max post size en virtud que los usuarios no suban archivos tan grandes debido a que son pdf o documentos en zip.

Espero este dato ayude a todos y me colaboren con el enigma de la subida de archivos previa a la validacion de su tamaño en el servidor jejeje gracias
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 15:23.