我似乎无法在 codeigniter 中上传 css 文件类型

Posted

技术标签:

【中文标题】我似乎无法在 codeigniter 中上传 css 文件类型【英文标题】:I can't seem to upload css file types in codeigniter 【发布时间】:2012-09-05 00:06:31 【问题描述】:

我正在尝试上传 css 文件用户 codigniter 的上传类。这是控制器:

public function uploadcssfile() 

   $config['upload_path'] = './stylesheets/stores/'.$memberid.'/'; 
   $config['file_name'] = 'main.css';    
   $config['allowed_types'] = 'css';   
   $config['overwrite'] = true;   
   $this->load->library('upload', $config);
   if (! $this->upload->do_upload('filefieldname'))
   
     die($this->upload->display_errors());
    

我只想上传一个css类型的文件,但是codeigniter总是报这个错误:

The filetype you are attempting to upload is not allowed.

【问题讨论】:

我只是猜测,试试$config['allowed_types'] = 'css|text/css'; 抱歉有一个类型,test/css 显然应该是text/css ;) 只是一个健全的检查;不只是您上传的文件 css,它还有.css 扩展名,对吧? $this->upload->do_upload('filefieldname') 我不认为它需要任何参数,所以只是$this->upload->do_upload(); 你初始化了辅助方法吗?例如$this->load->helper(array('form', 'url')); 您使用的是最新版本的 ci 2.1.2 吗?对 MIME 类型进行了一些重大修复 【参考方案1】:

我知道,这真的很奇怪,但它对我有用:

在 application/config/mimes.php,第 77 行

'css' => 'text/css',

改为:

'css' => array('text/css','text/x-c'),

要查看,如果您的开发环境有自己的幽默感并且可以将新的 mime 类型添加到任何文本文件(我的情况),请像​​这样检查您的 mime:

if ( ! $this->upload->do_upload(-your-form-input-name-) )
                    print_r($_FILES['-your-form-input-name-']['type']);
                    exit($this->upload->display_errors(). 'File Type: ' . $this->upload->file_type);
                

如果上传失败,它将显示您的服务器实际处理的 MIME 类型。

附言。现在你的问题有了答案,go here and help me :)

【讨论】:

以上是关于我似乎无法在 codeigniter 中上传 css 文件类型的主要内容,如果未能解决你的问题,请参考以下文章

“上传路径似乎无效”。 Codeigniter文件上传不起作用[关闭]

Codeigniter 上传图片 - 上传路径似乎无效

上传路径似乎无效”。 Codeigniter 文件上传

带有 Summernote 的 CodeIgniter - 无法将图像上传到数据库

上传路径似乎无效“。 Codeigniter文件上传

我无法使用 Codeigniter 上传 mp3 文件