do_upload does it
$ config ['allowed_types'] =' gif | jpg | png '
function do_upload() { $config['upload_path'] = './uploads/'; $config['allowed_types'] = 'gif|jpg|png'; $config['max_size'] = '100'; $config['max_width'] = '1024'; $config['max_height'] = '768'; $this->load->library('upload', $config); if ( ! $this->upload->do_upload()) { $error = array('error' => $this->upload->display_errors()); $this->load->view('upload_form', $error); } else { $data = array('upload_data' => $this->upload->data()); $this->load->view('upload_success', $data); } }
If you want to use the same name / extension that you send to save the file. You can use:
$upload_dir= $this->config->item("upload_dir"); $fileName = $_POST['sku_code'].".".$extension; $filePath = $upload_dir.$fileName; move_uploaded_file($_FILES["image-file"]["tmp_name"],$filePath );
Useful link:
https://ellislab.com/codeigniter/user-guide/libraries/file_uploading.html
source share