Codeigniter не работает переименование файла изображения

Я использую codeigniter и пытаюсь загрузить файлы изображений.

Все работает нормально, но я не могу изменить имя загруженного файла на произвольное имя.

Я перепробовал все за последние 5 часов, ничего не работает.

Если кто-то может помочь, было бы здорово.

Мне просто нужно переименовать загруженный файл в custom_name.jpg

Файл контроллера

 public function uploadimage() {

$config['overwrite'] = TRUE;
$config['file_name'] = 'custom_name.jpg';
$config["allowed_types"] = 'jpg|jpeg|png|gif';
$config['upload_path'] = './uploads/';

$config["max_size"] = 1024;
$config["max_width"] = 400;
$config["max_height"] = 400;
$this->load->library('upload', $config);

if(!$this->upload->do_upload()) {
$this->data['error'] = $this->upload->display_errors();
} else {
echo "success";
}

}

Просмотреть файл

<?php echo form_open_multipart('admin/uploadimage'); ?>
<?php echo form_upload('userfile'); ?><br />
<?php echo form_submit('upload', 'Upload');?>
<?php echo form_close(); ?>

0

Решение

Просто удалите пользовательское расширение из file_name и добавьте расширение загруженного файла.

public function uploadimage() {

$config['overwrite'] = TRUE;
$config['file_name'] = 'custom_name';
$config["allowed_types"] = 'jpg|jpeg|png|gif';
$config['upload_path'] = './uploads/';

$config["max_size"] = 1024;
$config["max_width"] = 400;
$config["max_height"] = 400;
$this->load->library('upload', $config);

if(!$this->upload->do_upload()) {
$this->data['error'] = $this->upload->display_errors();
} else {
echo "success";
}

}

Вы также можете использовать rename функция переименования файла после успешной загрузки.

Также проверьте это.

Каталог загрузки доступен для записи, а путь может быть абсолютным или относительным.

Установите предпочтения, позвонив initialize() метод, если вы автоматически загружаете класс $this->upload->initialize($config)

У вас есть некоторые ограничения на размер файла, также проверьте размер изображения.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector