Codeigniter: Ошибка Вы не выбрали файл для загрузки - PullRequest
0 голосов
/ 26 сентября 2018

Я пытаюсь реализовать функцию загрузки изображений на нашей веб-платформе.В настоящее время я получаю сообщение об ошибке «Вы не выбрали файл для загрузки».Он должен работать без отправки, потому что я не хочу обновлять страницу, а кнопки отправки будут запускать другие основные функции платоформ.

Моя форма:

<div id="selectMotiv">
  <?php echo form_open_multipart('upload/image');?>
   <input type="file" accept="image/*" id="motivImage" name="motivImage"/>              
   <button class="btn btn-outline-primary" id="buMotivUpload" type="submit">Upload</button>
  <?php echo form_close(); ?>
  <div id="uploaded_image">  
  </div> 
 </div>

Мои js:

$("#buMotivUpload").click(function (e) {
//$('form').on('submit', function (e)) {
  //e.preventDefault();
  console.log($('#motivImage').val());
  var upload_image = $('#motivImage').val();
  if ($('#motivImage').val() == ''){
    alert("Please Select the File");
  } else {
    console.log(upload_image);
    $.ajax({
      url: 'apps/upload',
      method: "POST",
      data: upload_image,
      contentType: false,
      datatype: "json",
      cache: false,
      processData: false,
      success: function (data){
        $('#uploaded_image').html(data);
      }
    });
  }
});

Мой контроллер:

<?php

  defined('BASEPATH') OR exit('No direct script access allowed');

  class Upload extends CI_Controller {

  public function index() {  

    $data = $_POST;

    if(isset($_FILES["motivImage"]["name"])){  
      $config = array(
        'upload_path' => "./uploads/",
        'allowed_types' => "gif|jpg|png|jpeg",
        'overwrite' => TRUE,
        'max_size' => "2048000" // Can be set to particular file size , here it is 2 MB(2048 Kb)
        //'max_height' => "768",
        // 'max_width' => "1024"
      );
      $this->load->library('upload', $config);      

      if($this->upload->do_upload('motivImage')){
        $data = $this->upload->data();
        echo 'success';
        //$this->load->view('upload_success',$data);
      }else{        
        echo $this->upload->display_errors(); 
        //$this->load->view('custom_view', $error);
      }   
    }else{
      echo json_encode($data);
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...