I'd like to ask a question please.
I have inside my model a method that holds both file uploading and image manipulation. The code works fine, but the only problem is I can't figure out how to get the upload error back in the controller in order to pass it to the view and display it to the user.
This is the code in my model:
class Foo_Model extends CI_Model
{
public function do_upload(){
$id = intval($this->input->post('id'));
$config = array(
'upload_path' => './uploads/files/',
'allowed_types' => 'gif|jpg|png',
'max_size' => '2048',
'max_width' => '800',
'max_heigth' => '300',
'overwrite' => true,
'file_name' => 'file_'.$id, // e.g. file_10.jpg
);
$this->load->library('upload', $config);
if ( ! $this->upload->do_upload('file') ) {
return $this->upload->display_errors();
} else {
// file uploaded successfully
// now lets create some thumbs
$upload_file = $this->upload->data();
if ($upload_file['is_image']) {
$config['image_library'] = 'gd2';
$config['source_image'] = $upload_file['file_name'];
$config['create_thumb'] = TRUE;
$config['maintain_ratio'] = TRUE;
$config['width'] = 75;
$config['height'] = 50;
$this->load->library('image_lib', $config);
$this->image_lib->resize();
}
// uploading and resizing was done
return $upload_file;
// return true;
}
}
}
Code in my controller
public function upload(){
$this->foo_model->do_upload();
// need to get the upload error (if any occured) or the upload data
// how can I get them back from function of the model?
$this->load->view('form_upload', $data);
}