我似乎无法在 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文件上传不起作用[关闭]