2012-09-18 25 views
5

He configurado codeigniter para cargar archivos pequeños < 2MB y eso funciona bien. Pero estoy teniendo problemas para subir archivos de gran 20MB>CodeIgniter Cargando archivos grandes

function stage1() 
    { 
    ini_set('upload_max_filesize', '200M'); 
    ini_set('post_max_size', '200M');        
    ini_set('max_input_time', 3000);         
    ini_set('max_execution_time', 3000); 

    $config['upload_path'] = './temp/'; 
    $config['allowed_types'] = 'zip'; 

    $this->load->library('upload', $config); 
    $this->upload->initialize($config);        
    if(!$this->upload->do_upload('userfile'))      
    { 
     $error = array('error' => $this->upload->display_errors()); 
     $this->load->view('upload_form', $error);      
    } 
    else 
    { 
     $data = array('upload_data' => $this->upload->data());   
     //do stuff 
    } 
    } 

No estoy seguro de lo que está mal con el código de seguridad. Me hizo caso omiso de la php.ini para aceptar archivos más grandes y tomar más tiempo de ejecutar el script, pero todavía devuelve el mismo error:

You did not select a file to upload. 

Una vez más, esto funciona con archivos pequeños, pero no los grandes.

EDIT:. Resulta que mi proveedor de servidor ha limitado la carga de archivos por lo que no hay solución, además de a FTP el archivo en

+0

Le recomiendo que mejore su tasa de accpet – artragis

Respuesta

1

No estoy seguro de su servidor acepta la propiedad ini "upload_max_filesize" que ser modificado HPHP ingenio guión. Por defecto no puede según la documentación http://php.net/manual/fr/ini.core.php.

upload_max_filesize | "2M" | PHP_INI_PERDIR | PHP_INI_ALL pour PHP <= 4.2.3.

PHP_INI_PERDIR significa que debe escribirse en su archivo ini directamente. Si no tiene control sobre php.ini, no podrá anular esta propiedad.

10

Debajo del código de uso en su archivo php.

ini_set('memory_limit', '200M'); 
ini_set('upload_max_filesize', '200M'); 
ini_set('post_max_size', '200M'); 
ini_set('max_input_time', 3600); 
ini_set('max_execution_time', 3600); 

aparato por debajo de código en el archivo .htaccess

php_value upload_max_filesize 128M 
php_value post_max_size 128M 
php_value max_input_time 3600 
php_value max_execution_time 3600 

Editar mi respuesta después de comentar

actualización respuesta parámetro

Conjunto de configuración en su stage1 Func ción.

$config['max_size'] = '1000000'; 
$config['max_width'] = '1024000'; 
$config['max_height'] = '768000'; 

Después de eso pruébelo.

+0

Intenté esto, no funcionó. Tuvo que crear un php.ini separado en el directorio raíz codeigniter (donde se encuentra el htcaccess) para agregar las etiquetas php_value que sugirió. – Kamran224

+0

Tengo la actualización de mi respuesta. por favor echa un vistazo. –

+0

Agregó su nueva sección de código pero aún no funciona – Kamran224