在codeigniter中使用dropzone多次上传图片

时间:2018-11-05 09:17:36

标签: javascript php codeigniter-3 dropzone.js

您好,我是新手,需要一些帮助,即时通讯使用sublime text 3,即时通讯使用codeigniter版本3.1.8,即时通讯有问题,问题是我不知道如何在dropzone中上传多个图片?和即时通讯使用dropzone.js的模板

这是我的查看代码

<div class="x_content">
      <div class="">
        <div class="clearfix"></div>
        <div class="row">
          <div class="col-md-12 col-sm-12 col-xs-12">
            <div class="x_panel">
              <div class="x_title">
                <h2>Dropzone multiple file uploader</h2>
                <ul class="nav navbar-right panel_toolbox">
                  <li><a class="collapse-link"><i class="fa fa-chevron-up"></i></a>
                  </li>
                  <li class="dropdown">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"><i class="fa fa-wrench"></i></a>
                    <ul class="dropdown-menu" role="menu">
                      <li><a href="#">Settings 1</a>
                      </li>
                      <li><a href="#">Settings 2</a>
                      </li>
                    </ul>
                  </li>
                  <li><a class="close-link"><i class="fa fa-close"></i></a>
                  </li>
                </ul>
                <div class="clearfix"></div>
              </div>
              <div class="x_content">
                <div id="my-dropzone" class="dropzone">
                <div class="dz-message">
                  <h3>Drop files here</h3> or <strong>click</strong> to upload
                </div>
                <input type="hidden" name="facility" id="facilityid" value="<?php echo $row->facilityid;?>">
              </div>
            </div>
          </div>
        </div>
      </div>
    </div>
    <div class="left_col" role="main" >
      <a class="btn btn-sm btn-info pull-right buttonnext" 
      href="">Next <i class="fa fa-upload"></i>
      </a>
    </div>
    <?php } ?>

这是我的剧本

<script>
Dropzone.autoDiscover = false;
Dropzone.prototype.defaultOptions.dictMaxFilesExceeded = "Can't upload more images.";
var myDropzone = new Dropzone("#my-dropzone", {
  url: "<?php echo site_url("facilitycontrol/insertuploaddetail") ?>",
  acceptedFiles: "image/*",
  addRemoveLinks: true,     
  removedfile: function(file) {
    var name = file.name;

    $.ajax({
      type: "post",
      url: "<?php echo site_url("faciltycontrol/remove") ?>",
      data: { file: name },
      dataType: 'html'
    });

    // remove the thumbnail
    var previewElement;
    return (previewElement = file.previewElement) != null ? (previewElement.parentNode.removeChild(file.previewElement)) : (void 0);
  },maxFiles: 10,

  init: function() {
    this.on("maxfilesexceeded", function(file){
        alert("you can't upload more images.");
    }),
    this.on("success", function(file, xhr){
      var texting = $('#facilityid').val();
      // alert(texting);
         $(".buttonnext").show();
        var data = file.xhr.response;
        $(".buttonnext").click(function() {
          /* Act on the event */
          // alert(data);
        window.location = "<?php echo base_url(); ?>facilitycontrol/descriptionview/"+data+"/"+texting;

        });

    })
  },
});

这是我的控制器

public function insertuploaddetail(){
    if ( ! empty($_FILES)) 
    {
        $config["upload_path"]   = './assets/images/facility/';
        $config["allowed_types"] = "gif|jpg|png";
        $this->load->library('upload', $config);
        $this->upload->initialize($config);
        $this->upload->do_upload('file');
        $fileData = $this->upload->data();
        print_r($fileData['file_name']);
    }
}

我只是新手,我真的需要您的帮助

1 个答案:

答案 0 :(得分:0)

请尝试使用常规表单标签包裹表单。

<form action="" method="post" enctype="multipart/form-data"> 
   <!-- form content starts -->
   <!-- form content end -->
</form>

该enctype将允许通过php上传表单。