Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/07/2011, 12:08
Avatar de Ronruby
Ronruby
 
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 4 meses
Puntos: 416
Validacion de Formularios y Subida de Archivos

Saludos,

Me esta pasando algo bien raro usando CI.
En uno de mis controladores tengo una validación de formulario y dentro de esta hay una subida de archivos.
La validación y la subida de archivos funciona perfectamente, salvo por una "cosita".

Cuando subo un archivo mayor a 3M, que es lo que especifiqué como tamaño máximo para los archivos, no pasa nada. No muestra el error. Nisiquiera entra en la validacion del formulario.

Con codigo para que se entienda mejor, tengo mi controlador:
Código PHP:
Ver original
  1. //Imaginemos que ya tengo cargadas las librerias necesarias
  2. class Prueba extends Controller {
  3.     public function do_something() {
  4.         //Seteo mis reglas, por ejemplo:
  5.         $this->form_validation->set_rules('campo', 'Campo', 'trim|required');
  6.        
  7.         if($this->form_validation->run() === true) {
  8.             //Subo el archivo:
  9.             if($this->modelo->subirArchivo()) {
  10.                 //El archivo se subio correctamente
  11.             } else {
  12.                 //El archivo no subio, mostrar error
  13.             }
  14.         } else {
  15.             //Mostrar errores
  16.         }
  17.         $this->load->view('formulario', $data);
  18.     }
  19. }

Si no lleno los campos, salen los errores de validación.
Si lleno los campos y elijo un archivo menor de 3M, lo sube y guarda el registro
Si lleno los campos y elijo un archivo mayor de 3M, se salta la validacion.

Hice una prueba poniendo lo siguiente:
Código PHP:
Ver original
  1. //Imaginemos que ya tengo cargadas las librerias necesarias
  2. class Prueba extends Controller {
  3.     public function do_something() {
  4.         //Seteo mis reglas, por ejemplo:
  5.         $this->form_validation->set_rules('campo', 'Campo', 'trim|required');
  6.        
  7.         if($this->form_validation->run() === true) {
  8.             //Subo el archivo:
  9.                         var_dump($_FILES);
  10.                         return;
  11.             if($this->modelo->subirArchivo()) {
  12.                 //El archivo se subio correctamente
  13.             } else {
  14.                 //El archivo no subio, mostrar error
  15.             }
  16.         } else {
  17.             //Mostrar errores
  18.         }
  19.         $this->load->view('formulario', $data);
  20.     }
  21. }

Si lo corro con el archivo menor de 3M y los campos, sale el contenido de $_FILES usando el var_dump().
Si lo corro con el archivo mayor a 3M y los campos llenos, no sale el var_dump() y vuelve a cargar el view formulario

¿Que puede estar pasando?
¿Estoy haciendo algo mal?
¿Alguien ha tenido un problema similar?

Gracias por las respuestas de antemano

EDIT: Una ultima nota, ya verifique las variables en mi php.ini y estan seteadas correctamente.

Última edición por Ronruby; 22/07/2011 a las 12:17