在代码点火器中上传PDF,CSV和其他文件类型


upload pdf, csv and other file type in codeigniter

代码上传csv,pdf和其他

$config['allowed_types'] = "application/pdf|pdf|application/octet-stream|csv";

print_r($_FILES);

给对于 CSV

Array ( [userfile] => Array ( [name] => file.csv [type] => application/octet-stream [tmp_name] => C:'xampp'tmp'php4FD2.tmp [error] => 0 [size] => 7 ) )

对于 PDF

Array ( [userfile] => Array ( [name] => doc.pdf [type] => application/pdf [tmp_name] => C:'xampp'tmp'phpA4E5.tmp [error] => 0 [size] => 127670 ) ) 

$this->upload->display_errors()

为两者提供

Array ( [error] => 1 [msg] => The filetype you are attempting to upload is not allowed. )

任何有想法的人都是问题所在

我也尝试了来自其他 QUE 的 ans 像这样在哑剧中.php

'pdf'   =>      array('application/pdf', 'application/x-pdf', 'application/x-download','application/x-download', 'binary/octet-stream', 'application/unknown', 'application/force-download'),

请将其添加到您的应用程序''配置''MIMES.php文件中。

'csv'   =>  array('text/x-comma-separated-values', 'text/comma-separated-values', 'application/octet-stream', 'application/vnd.ms-excel', 'application/x-csv', 'text/x-csv', 'text/csv', 'application/csv', 'application/excel', 'application/vnd.msexcel')
'pdf'   =>  array('application/pdf', 'application/x-download')

现在在控制器使用中的上传功能

$config['allowed_types'] = 'pdf|csv';
$this->load->library('upload', $config);
$this->upload->initialize($config);`

当程序接收多个文件时,我遇到了同样的问题,我看到该方法没有重置正在上传的当前文件中的完整数据。

分离函数的问题已解决

$this->加载>库("上传",$config(;

自:

$this->加载>库("上传"(;

$this->上传->初始化($config(;

function fn_upload_file($file_name, $path, $types = 'gif|jpg|jpeg|png|mp3|mpeg') {
    $config = array();
    $config['upload_path'] = $path;
    $config['allowed_types'] = $types;
    $config['max_size']    = '15000000';
     
    $this->load->library('upload');
    
    $this->upload->initialize($config);
    
    if(!is_dir($path)){
        @mkdir($path, 0777, true);
    }
    
    if ( ! $this->upload->do_upload($file_name)) {
        throw new Exception($this->upload->display_errors());
    } else {
        return $this->upload->data();
    }
}

当我使用 $this->上传->data(( 时的原因;