upload image got error in codeigniter -


what im trying im trying upload image database dont know reason why i've got error

 message: undefined index: userfile  message: undefined variable: images 

in view. can see name of input file set array same other tutorial

  <!-- bootstrap modal -->     <div class="modal fade" id="modal_form" role="dialog">    <div class="modal-dialog">     <div class="modal-content">         <div class="modal-header">             <button type="button" class="close" data-dismiss="modal" aria-label="close"><span aria-hidden="true">&times;</span></button>             <h3 class="modal-title">person form</h3>         </div>         <div class="modal-body form">             <form action="#" id="form" class="form-horizontal">                 <input type="hidden" value="" name="id"/>                  <div class="form-body">                     <div class="form-group">                         <label class="control-label col-md-3">first name</label>                         <div class="col-md-9">                             <input name="firstname" placeholder="first name" class="form-control" type="text">                             <span class="help-block"></span>                         </div>                     </div>                     <div class="form-group">                         <label class="control-label col-md-3">image</label>                         <div class="col-md-9">                         <input type="file" name="userfile[]" id="file" class="form-control">                             <span class="help-block"></span>                         </div>                     </div>                     <div class="form-group">                         <label class="control-label col-md-3">gender</label>                         <div class="col-md-9">                             <select name="gender" class="form-control">                                 <option value="">--select gender--</option>                                 <option value="male">male</option>                                 <option value="female">female</option>                             </select>                             <span class="help-block"></span>                         </div>                     </div>                     <div class="form-group">                         <label class="control-label col-md-3">address</label>                         <div class="col-md-9">                             <textarea name="address" placeholder="address" class="form-control"></textarea>                             <span class="help-block"></span>                         </div>                     </div>                     <div class="form-group">                         <label class="control-label col-md-3">date of birth</label>                         <div class="col-md-9">                             <input name="dob" placeholder="yyyy-mm-dd" class="form-control datepicker" type="text">                             <span class="help-block"></span>                         </div>                     </div>                 </div>             </form>         </div>         <div class="modal-footer">             <button type="button" id="btnsave" onclick="save()" class="btn btn-primary">save</button>             <button type="button" class="btn btn-danger" data-dismiss="modal">cancel</button>         </div>     </div><!-- /.modal-content -->    </div><!-- /.modal-dialog -->  </div><!-- /.modal -->  <!-- end bootstrap modal   

in controller.

 public function image()    {    $files = $_files;            $cpt = count($_files['userfile']['name']); //this line has error, message: undefined index: userfile              for($i=0; $i<$cpt; $i++)             {             $_files['userfile']['name']= $files['userfile']['name'][$i];             $_files['userfile']['type']= $files['userfile']['type'][$i];             $_files['userfile']['tmp_name']= $files['userfile']['tmp_name'][$i];              $_files['userfile']['error']= $files['userfile']['error'][$i];              $_files['userfile']['size']= $files['userfile']['size'][$i];             $this->upload->initialize($this->set_upload_options());             $this->upload->do_upload();             $filename = $_files['userfile']['name'];              $images[] = $filename;    }    $filename = implode(',',$images); // line has error, message: undefined variable: images    return $filename;    }    public function ajax_add()   {      $this->_validate();     $data = array(             'firstname' => $this->input->post('firstname'),             //'lastname' => $this->input->post('lastname'),             'gender' => $this->input->post('gender'),             'address' => $this->input->post('address'),             'dob' => $this->input->post('dob'),             'image' => $this->input->post($this->image()),         );     $insert = $this->person->save($data);     echo json_encode(array("status" => true));    }    private function set_upload_options()    {       // upload image options      $config = array();      $config['upload_path'] = './upload/'; //give path upload image in folder      $config['allowed_types'] = 'gif|jpg|png';       $config['max_size'] = '0';      $config['overwrite'] = false;    return $config;    }     public function ajax_update()    {     $this->_validate();     $data = array(             'firstname' => $this->input->post('firstname'),         //  'lastname' => $this->input->post('lastname'),             'gender' => $this->input->post('gender'),             'address' => $this->input->post('address'),             'dob' => $this->input->post('dob'),         );     $this->person->update(array('id' => $this->input->post('id')), $data);     echo json_encode(array("status" => true));    } 

i want insert image name database errors block me that... need help.

in ajax request please add

   $("#form").submit(function(e){     e.preventdefault();     var fd = new formdata();         $.ajax({          xhr: function() {                     var xhrobj = $.ajaxsettings.xhr();                     return xhrobj;                 },      data: formdata,     on.... //ajax close }); 

and dont forgot use

enctype="multipart/form-data" 

on form tag...and fine

for undefined variable: images

please put

    $images = array();// before loop.  $cpt = count($_files['userfile']);  

Comments

Popular posts from this blog

routing - AngularJS State management ->load multiple states in one page -

python - GRASS parser() error -

Swift game error message -