8

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.
4

1 に答える 1

3

私は知っています、これは本当に奇妙ですが、私にとってはうまくいきました:

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 タイプが表示されます。

PS。あなたの質問に対する答えがあるので、ここに行って私を助けてください:)

于 2012-09-14T11:04:32.243 に答える