[Codeigniter-users] FirefoxでCSV形式のファイルがアップロードできない

Back to archive index

ECS内田 uchid****@ecs*****
2009年 8月 6日 (木) 12:51:40 JST


お世話になります。内田と申します。

CSVファイルのアップロード機能を実装しておりますが、
IE8では問題なくアップロードは成功しますが、
Firefoxの場合アップロードに失敗します。
どうやらFirefoxの場合MIME TYPESがおかしいようです。
Codeigniterのバージョンは1.7.1です。

以下がコントローラーのコードの一部です。

$this->load->library('upload');
$config['allowed_types'] = 'csv';
$this->upload->initialize($config);
$this->upload->set_upload_path(ローカルのパス);
if(!($this->upload->do_upload("file_name"))){
	log_message('error','ファイルアップロードに失敗:'.$this->upload->display_errors());
	var_dump($this->upload->data());
	return ;
}

アップロードに失敗した時以下のようにファイル情報が出力されます。

array(13) {
  ["file_name"]=>
  string(8) "list.csv"
  ["file_type"]=>
  string(41) "\"\\\"text/x-comma-separated-values\\\"\""

※["file_type"]が「"\"\\\"text/x-comma-separated-values\\\"\""」
となっております。
IEでは「"application/octet-stream"」でした。

これに対応すべく/config/mimes.phpのCSVのmime typesを
以下のように変更しました。
'csv' => array('\"\\\"text/x-comma-separated-values\\\"\"' ,
'\"x-comma-separated-values\"' , 'text/x-comma-separated-values',
'text/comma-separated-values', 'application/octet-stream',
'application/vnd.ms-excel', 'text/csv', 'application/csv',
'application/excel', 'application/vnd.msexcel'),

これでもエラーとなってしまいます。
どなたか同じような現象に遭遇した方いらっしゃいませんか?

よろしくお願いいたします。




Codeigniter-users メーリングリストの案内
Back to archive index