Farklı dosya türleri Codeigniter çoklu yükleme

0 Cevap php

I want to upload an audio file and an image in the same form and store their names in the db...what happens is only one of the files is uploaded (the one that is first in row) the other gives an error of not allowed type

burada benim görünümüdür:

        <?php echo form_open_multipart('index.php/ena_dyo_edit');?>
        Title:<input type='text' name="title" size="40" id="title" />
        <p>Title Photo:<input type="file" name="title_photo" size="20" id="title_photo" /></p>
        <p>Body:<textarea name="body" rows = "10" cols="60" id="body"></textarea><p>
        <p>Soundfile:<input type="file" name="soundfile" size="20" id="soundfile" /></p>
        <p>Author:<input type="text" name="author" size="40" id="author"/></p>
        <p><input type="submit" value="Submit New Post"/></p>
        <?php echo form_close(); ?>

ve burada benim modeli işlevleri şunlardır:

function soundfile_upload($userfile = 'userfile'){
    //uploads a sound file

     $config = array(
            'upload_path' => './uploads/soundfiles/',
            'allowed_types' => 'mp3|wav|aif|aiff|ogg',
            'max_size' => '256000' //250 MB max size
        );


      $this->load->library('upload', $config);

       if (!$this->upload->do_upload($userfile)) {
            $error = array('error' => $this->upload->display_errors());

            $this->load->view('upload_error', $error);
        }

      else{

           $soundfile_data = $this->upload->data();
           $entry_title = $this->input->post('title'); //using the name of the post to relate the audio file
           $entry_id = $this->db->insert_id(); //the id of our last entry!

           //create array to load to database
           $insert_data = array(
                'soundfile' => $soundfile_data['file_name']
               );

            //$this->db->where('id', $entry_id);
            $this->db->update('entries', $insert_data,array('id' => $entry_id));  //load array to database
      }



  }

  function title_photo_upload($userfile = 'userfile'){
    //uploads a photo for a post title

     $config = array(
            'upload_path' => './uploads/title_photos/',
            'allowed_types' => 'jpg|jpeg|gif|png',
            'max_size' => '256000' //250 MB max size
        );


      $this->load->library('upload', $config);

       if (!$this->upload->do_upload($userfile)) {
            $error = array('error' => $this->upload->display_errors());

            $this->load->view('upload_error', $error);
        }

      else{

           $soundfile_data = $this->upload->data();
           $entry_id = $this->db->insert_id(); //the id of our last entry!

           //create array to load to database
           $insert_data = array(
                'title_photo' => $soundfile_data['file_name']
               );


            $this->db->update('entries', $insert_data,array('id' => $entry_id));  //load picture where id = entry_id



  }
}

0 Cevap