2010年9月28日 星期二

[CodeIgniter] 讓CI支援rar 檔案上傳 20101026修正

今天在用CodeIgniter作檔案上傳功能時, 才發現不管怎麼傳rar都會顯示

The filetype you are attempting to upload is not allowed.

後來發現原來CI的MIME(Multipurpose Internet Mail Extensions)檔根本沒有rar

所以手動加入rar 這個檔案類型

但因不同瀏覽器判斷rar的結果不一樣, 所以要三種都加上

IE8, Chrome, Safari:   application/octet-stream
Firefox: application/rar
Opera:  application/x-rar-compressed


打開 codeigniter\system\application\config\mimes.php


在mime陣列中加上


'rar'   =>  array('application/x-rar-compressed', 'application/rar', 'application/octet-stream')
 

2010-10-26 更新

今天發現Chrome跟Firefox瀏覽器更新之後, 都會發現mimes type抓不到的情形

Firefox是上傳rar時顯示document/unknown
Chrome則是zip和rar都完全抓不到

所以之後就用CI內建的file_helper

有個函數叫get_mime_by_extension, 直接透過副檔名來抓它的type, 即可解決
Related Posts Plugin for WordPress, Blogger...