Codeigniter do_upload方法不起作用

d8tt03nd  于 2022-12-07  发布在  其他
关注(0)|答案(1)|浏览(120)

我正在用Codeigniter处理cms。我正在尝试从系统上传文件。我正在接收文件,但do_upload方法不起作用。关于这个主题有类似的问题,但没有一个答案起作用。
下面是我的方法:

public function fileupdate($productId=False){
    
    $formData = $this->input->post();

    if (isset($formData['activityNewFile'])) {
        
        foreach ($formData['activityNewFile'] as $key => $value) {
            $rndNumber = rand(1,500);
            $fileLastName = sef_url($formData['activitynewfilename'.$value]);
            // Set preference 
            $config['upload_path']   = '../assets/'; 
            $config['allowed_types'] = 'pdf|doc|docx|xls|xlsx'; 
            $config['max_size']      = '80960'; // max_size in kb 
            $config['file_name']     = $fileLastName; 
            $upFile                  = 'activitynewfile'.$value;
         
          
            // Load upload library 
            $this->load->library('upload',$config); 
            // File upload
            if($this->upload->do_upload($upFile)){ 
                 // Get data about the file
                 $uploadData = $this->upload->data(); 
                 $filename = $uploadData['file_name']; 

                $daData = array(
                    'productId'        => $productId,
                    'productFileName'  => $formData['activitynewfilename'.$value],
                    'productFile'      => $filename
                );
                $productfileInsert = $this->db->insert('productfile',$daData);
            
            }
            
        }

    }

    $this->success("İşlem tamamlandı.");

}

HTML部分:

<form class="m-form m-form--fit m-form--label-align-right" role="form" method="POST" id="product_file_edit" action="<?=base_url('product/product/fileupdate/'.$productInfo->productId);?>" enctype="multipart/form-data"  onsubmit="return false; form_gonder('product_file_edit')" >
            <div class="modal-body">
    
                <div class="form-group m-form__group row">
                    <div class="col-lg-12 col-md-12 col-sm-12">
                        <div class="col-md-12" style="margin-bottom: 10px;padding: 0;" id="file_row">
                            <button  onclick="addFileRow('file_add')" class="btn btn-primary btn-sm">
                                <i class="zmdi zmdi-plus"></i> Add
                            </button>
                        </div>
                    </div>
                </div>
            </div>
            <div class="modal-footer">
                <button  onclick="form_gonder('product_file_edit')"  class="btn btn-green btn-sm">
                    Save
                </button>
            </div>
        </form>

Javascript部分:

function addFileRow(tur){

        if(tur=="file_add"){

          emreFile = Math.floor(Math.random() * 10);

          myhtmlFile = '<div class="col-md-12 row" id="filenew'+emreFile+'" style="padding: 0;margin: 0;margin-bottom: 10px;"><div class="input-group"><input type="hidden" name="activityNewFile[]" value="'+emreFile+'"><img src="../assets/file/pdfword.png" style="width: 38px;float: left;height: 38px;"><input type="text"  name="activitynewfilename'+emreFile+'"  class="form-control" placeholder="Dosya Adı" style="width: 45%;float: left;height: 39px;"><input type="file"  name="activitynewfile'+emreFile+'"  accept=".xls,.xlsx,.doc,.docx,.pdf"  class="form-control" placeholder="Dosya Adı" style="width: 46%;opacity: 1;float: right;position: relative;"><span class="input-group-btn"><button class="btn btn-red btn-fab  btn-fab-sm  animate-fab" onclick="deleteNewFileRow('+emreFile+')" type="button"><i class="zmdi zmdi-delete"></i></button></span></div></div>';

          var icerikFile = myhtmlFile;

          jQuery("#file_row").prepend(icerikFile);

        }
    }

如果你能找出问题所在,我将不胜感激。

gwo2fgha

gwo2fgha1#

您的问题实际上是文件加载不正确。您的代码中没有错误。请确保在您的服务器上打开了file_uploads。请确保upload_max_filesize值不小于您的文件大小。

相关问题