CSV文件上传不与Codeigniter一起使用 [英] CSV file upload not working with Codeigniter

查看:171
本文介绍了CSV文件上传不与Codeigniter一起使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用下面的代码来上传csv文件。无效的说无效文件error.please帮助我解决这个问题?

I'm using below code for upload csv files.Always its saying invalid file error.please help me to fix this issues?

这是我的形式: / p>

Here is my form:

<form name="bulk_dealer" action="<?= base_url() ?>admin/add_bulk_user" method="post" accept-charset="utf-8"  enctype="multipart/form-data">  
    <ul>  
        <ul>
            <li class="ui-field"><label for="csvfile">Upload dealer id file( *only .csv) :</label></li> 
            <li class="ui-input"><input type="file" name="csvfile" value="" placeholder="" required=""></li>  
            <li><input type="submit" value="Upload" name="Upload" class="ui-submit"></li>  
        </ul>
    </ul>  
</form>

这里是我的控制器

function add_bulk_user() {
    $data['add_bulk_user_errors'] = NULL;
    $data['add_bulk_user_success'] = NULL;       

    if ($this->input->post() !== FALSE) {
        $config_arr = array(
            'upload_path' => './uploads/csv/',
            'allowed_types' => 'text/plain|text/csv|csv',
            'max_size' => '2048',
            'max_width' => '1024',
            'max_height' => '768',
            'encrypt_name' => true,
            'file_name' => 'dealer'
        );

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

        if (!$this->upload->do_upload('csvfile')) {
            $data['add_bulk_user_errors'] = $this->upload->display_errors(); // this isn't working                
        } else {
            $csvfilepath = "uploads/csv/" . $config_arr['file_name'];
            $this->addfromcsv($csvfilepath);
            $data['qs'] = $this->upload->data();
            $row = 1;

            if (($handle = fopen("./uploads/csv/dealer.csv", "r")) !== FALSE) {
                while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
                    $num = count($data);
                    $row++;
                    for ($c = 0; $c < $num; $c++) {

                        $this->load->model("login_model");
                        $is_esist = $this->login_model->check_is_exist($data[$c]);
                        if ($is_esist) {

                        } else {
                            $this->login_model->set_login($data[$c], 'dealer@ceat123');
                        }
                    }
                }
                fclose($handle);
            }

            $data['add_bulk_user_success'] = "File Uploaded Successfully";
        }

        $data['main_content'] = 'admin/add';

        $this->load->view('admin_layout', $data);
        redirect('admin/add_bulk_user', 'refresh');
    } else {
        $data['main_content'] = 'admin/add';
        $this->load->view('admin_layout', $data);
    }
}

mimes.php

mimes.php

$mimes = array( 'hqx'   =>  'application/mac-binhex40',
            'cpt'   =>  'application/mac-compactpro',
            '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'),
            'bin'   =>  'application/macbinary',
            'dms'   =>  'application/octet-stream',
            'lha'   =>  'application/octet-stream',
            'lzh'   =>  'application/octet-stream',
            'exe'   =>  array('application/octet-stream', 'application/x-msdownload'),
            'class' =>  'application/octet-stream',
            'psd'   =>  'application/x-photoshop',
            'so'    =>  'application/octet-stream',
            'sea'   =>  'application/octet-stream',
            'dll'   =>  'application/octet-stream',
            'oda'   =>  'application/oda',
            'pdf'   =>  array('application/pdf', 'application/x-download'),
            'ai'    =>  'application/postscript',
            'eps'   =>  'application/postscript',
            'ps'    =>  'application/postscript',
            'smi'   =>  'application/smil',
            'smil'  =>  'application/smil',
            'mif'   =>  'application/vnd.mif',
            'xls'   =>  array('application/excel', 'application/vnd.ms-excel', 'application/msexcel'),
            'ppt'   =>  array('application/powerpoint', 'application/vnd.ms-powerpoint'),
            'wbxml' =>  'application/wbxml',
            'wmlc'  =>  'application/wmlc',
            'dcr'   =>  'application/x-director',
            'dir'   =>  'application/x-director',
            'dxr'   =>  'application/x-director',
            'dvi'   =>  'application/x-dvi',
            'gtar'  =>  'application/x-gtar',
            'gz'    =>  'application/x-gzip',
            'php'   =>  'application/x-httpd-php',
            'php4'  =>  'application/x-httpd-php',
            'php3'  =>  'application/x-httpd-php',
            'phtml' =>  'application/x-httpd-php',
            'phps'  =>  'application/x-httpd-php-source',
            'js'    =>  'application/x-javascript',
            'swf'   =>  'application/x-shockwave-flash',
            'sit'   =>  'application/x-stuffit',
            'tar'   =>  'application/x-tar',
            'tgz'   =>  array('application/x-tar', 'application/x-gzip-compressed'),
            'xhtml' =>  'application/xhtml+xml',
            'xht'   =>  'application/xhtml+xml',
            'zip'   =>  array('application/x-zip', 'application/zip', 'application/x-zip-compressed'),
            'mid'   =>  'audio/midi',
            'midi'  =>  'audio/midi',
            'mpga'  =>  'audio/mpeg',
            'mp2'   =>  'audio/mpeg',
            'mp3'   =>  array('audio/mpeg', 'audio/mpg', 'audio/mpeg3', 'audio/mp3'),
            'aif'   =>  'audio/x-aiff',
            'aiff'  =>  'audio/x-aiff',
            'aifc'  =>  'audio/x-aiff',
            'ram'   =>  'audio/x-pn-realaudio',
            'rm'    =>  'audio/x-pn-realaudio',
            'rpm'   =>  'audio/x-pn-realaudio-plugin',
            'ra'    =>  'audio/x-realaudio',
            'rv'    =>  'video/vnd.rn-realvideo',
            'wav'   =>  array('audio/x-wav', 'audio/wave', 'audio/wav'),
            'bmp'   =>  array('image/bmp', 'image/x-windows-bmp'),
            'gif'   =>  'image/gif',
            'jpeg'  =>  array('image/jpeg', 'image/pjpeg'),
            'jpg'   =>  array('image/jpeg', 'image/pjpeg'),
            'jpe'   =>  array('image/jpeg', 'image/pjpeg'),
            'png'   =>  array('image/png',  'image/x-png'),
            'tiff'  =>  'image/tiff',
            'tif'   =>  'image/tiff',
            'css'   =>  'text/css',
            'html'  =>  'text/html',
            'htm'   =>  'text/html',
            'shtml' =>  'text/html',
            'txt'   =>  'text/plain',
            'text'  =>  'text/plain',
            'log'   =>  array('text/plain', 'text/x-log'),
            'rtx'   =>  'text/richtext',
            'rtf'   =>  'text/rtf',
            'xml'   =>  'text/xml',
            'xsl'   =>  'text/xml',
            'mpeg'  =>  'video/mpeg',
            'mpg'   =>  'video/mpeg',
            'mpe'   =>  'video/mpeg',
            'qt'    =>  'video/quicktime',
            'mov'   =>  'video/quicktime',
            'avi'   =>  'video/x-msvideo',
            'movie' =>  'video/x-sgi-movie',
            'doc'   =>  'application/msword',
            'docx'  =>  array('application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'application/zip'),
            'xlsx'  =>  array('application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'application/zip'),
            'word'  =>  array('application/msword', 'application/octet-stream'),
            'xl'    =>  'application/excel',
            'eml'   =>  'message/rfc822',
            'json' => array('application/json', 'text/json')
        );


推荐答案

'allowed_types'=> 'csv',



在您的根目录下,转到 application - > config - > mimes.php in csv add 'text / plain'

On your root directory go to application -> config -> mimes.php in csv add 'text/plain'

这篇关于CSV文件上传不与Codeigniter一起使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆