Saltar al contenido

Codeigniter Cambiar el nombre del archivo al cargar

Tenemos la mejor respuesta que encontramos por todo internet. Nosotros deseamos que te resulte de ayuda y si puedes compartir algo que nos pueda ayudar a mejorar hazlo con libertad.

Solución:

Puede cifrar el nombre del archivo con el uso de la opción nativa de CI:

$config['encrypt_name'] = TRUE;

O

Puedes hacerlo con tu propio código:

$new_name = time().$_FILES["userfiles"]['name'];
$config['file_name'] = $new_name;

Por alguna razón, las llamadas consecutivas a la función do_upload no funcionan. Se adhiere al primer nombre de archivo establecido por la primera llamada de función

$small_photo_url  = $this->upload_photo('picture_small',  $this->next_id.'_small ');
$medium_photo_url = $this->upload_photo('picture_medium', $this->next_id.'_medium');
$large_photo_url  = $this->upload_photo('picture_large',  $this->next_id.'_large ');

Todos los nombres de archivo serán “00001_pequeño”, “00001_pequeño1”, “00001_pequeño2” dadas las siguientes configuraciones

function upload_photo($field_name, $filename)
{
    $config['upload_path'] = 'Public/uploads/';
    $config['allowed_types'] = 'gif|jpg|png';
    $config['max_size'] = '1024';
    $config['max_width']  = '1024';
    $config['max_height']  = '768';
    $config['file_name'] = $filename;

    $this->load->library('upload', $config);

    if ( ! $this->upload->do_upload())...

Creo que es porque esta línea no funciona la segunda vez que la llamas. No vuelve a establecer las configuraciones

$this->load->library('upload', $config);

================================================== ========================= Solución al problema enfrentado durante llamadas consecutivas a la función do_upload:

// re-initialize upload library
$this->upload->initialize($config);

Para lo que está buscando exactamente, esto funcionó para mí:

$path = $_FILES['image']['name'];
$newName = "".".".pathinfo($path, PATHINFO_EXTENSION); 

Calificaciones y reseñas

Si estás contento con lo expuesto, tienes la opción de dejar un escrito acerca de qué te ha impresionado de este escrito.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *