我收到錯誤:當我嘗試上傳任何文件時,不允許使用您嘗試上傳的文件類型。在Codeigniter中上傳 - 您嘗試上傳的文件類型不允許
if(!empty($_FILES['proof_of_purchase']['name'])) {
$config['upload_path'] = './uploads/invoices/';
$config['allowed_types'] = 'gif|jpg|jpeg|png|pdf|bmp';
$config['max_size'] = '3000';
$this->load->library('upload', $config);
// if there was an error, return and display it
if (!$this->upload->do_upload('proof_of_purchase'))
{
$data['error'] = $this->upload->display_errors();
$data['include'] = 'pages/classic-register';
} else {
$data['upload_data'] = $this->upload->data();
$filename = $data['upload_data']['file_name'];
}
}
我已經嘗試了許多不同的文件 - 主要是GIF & JPEG,每次得到同樣的錯誤。
var_dump($ _ FILES);給我:
array(1) { ["proof_of_purchase"]=> array(5) { ["name"]=> string(28) "2010-12-04_00019.jpg" ["type"]=> string(10) "image/jpeg" ["tmp_name"]=> string(19) "D:\temp\php2BAE.tmp" ["error"]=> int(0) ["size"]=> int(58054) } }
我檢查了mime配置,它包含正確的東西。例如:
'jpeg' => array('image/jpeg', 'image/pjpeg'),
'jpg' => array('image/jpeg', 'image/pjpeg'),
'jpe' => array('image/jpeg', 'image/pjpeg'),
我在這上面花了太多時間,這讓我感到非常瘋狂!任何想法都會非常有幫助。
嘗試使用'$ this-> upload-> data()'檢查CodeIgniter讀取的dile信息,可能你會發現一些線索。 –
看起來好嗎? - 「array(14){[」file_name「] => string(15)」minifur-hs1.jpg「[」file_type「] => string(10)」image/jpeg「[」file_path「] => string( 32)「D:/ www/website/uploads/invoices /」[「full_path」] => string(47)「D:/www/website/uploads/invoices/minifur-hs1.jpg」[「raw_name」] = > string(11)「minifur-hs1」[「orig_name」] => string(0)「」[「client_name」] => string(15)「minifur-hs1.jpg」[「file_ext」] => string( 4)「.jpg」[「file_size」] => int(18168)[「is_image」] => bool(true)[「image_width」] => string(0)「」[「image_height」] => string( 0)「」[「image_type」] => string(0)「」[「image_size_str」] => string(0)「」} – dangermark
我也遇到了這個問題。當我使用「'時出現錯誤。在形式的另一個領域,但它似乎工作正常,只要我不使用'。'奇怪的。 –