0
public function getbasicinfo()
{
    if($this->form_validation->run('basicinfo')==TRUE) {
      $data=$this->input->post();

       $config = [
                'upload_path'   => 'assets/img/jobseeker',
                'allowed_types' => 'gif|jpg|png',
                'max_size'      => '10000',
                'max_width'     => '1024',
                'max_height'    => '768',
                'overwrite'     =>  TRUE,
               'encrypt_name'  =>  FALSE,
                'remove_spaces' =>  TRUE
        ];

        if ( ! is_dir($config['upload_path']) ) die("THE UPLOAD DIRECTORY DOES NOT EXIST");
        $this->load->library('upload', $config);

        if(! $this->upload->do_upload('image'))
        {
            $error = $this->upload->display_errors();
            $this->session->set_flashdata('image',$error);
                redirect('Jobseeker_profile/editbasicinfo');
        }
        $img = $this->upload->data();
        $data['image']=$img['file_name'].$id;
        $this->load->model('jobseeker_profilemodel','profile');              
        $query=$this->profile->basicinfo($data);
        if ($query==TRUE) {
            redirect('jobseeker/jobpreference');
        }

    }else{
        $this->load->view('jobseeker/editBasicInfoMyProfile');
   }    
}

while uploading image using above method gives following error

Fatal error: Uncaught Error: Call to a member function do_upload() on null in C:\xampp\htdocs\Project\application\controllers\Jobseeker_profile.php:53 Stack trace: #0 C:\xampp\htdocs\Project\system\core\CodeIgniter.php(360): Jobseeker_profile->getbasicinfo() #1 C:\xampp\htdocs\Project\index.php(202): require_once('C:\xampp\htdocs...') #2 {main} thrown in C:\xampp\htdocs\Project\application\controllers\Jobseeker_profile.php on line 53

1
  • where you define do_upload function? Commented Aug 28, 2018 at 5:42

1 Answer 1

1

You missing do_upload function definition and here is fixed the code

Here is HTML sample code

<html>
    <head>
    <title>Upload Form</title>
    </head>
    <body>

        <?php echo form_open_multipart('upload/do_upload');?>

            <input type="file" name="userfile" size="20" />

            <br /><br />

            <input type="submit" value="upload" />

        </form>

    </body>
</html>

Here is Sample PHP code for Upload image

 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);
        }
    }

Here is the structure of sample class for do_upload function, i think this will help you to understand the do_upload function definition

class Upload extends CI_Controller {

    function __construct()
    {
        parent::__construct();
        $this->load->helper(array('form', 'url'));
    }

    function index()
    {
        $this->load->view('upload_form', array('error' => ' ' ));
    }
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.