Rumah > Artikel > pembangunan bahagian belakang > Mengapa CodeIgniter Menolak Fail WMV Saya Walaupun Saya Menentukan Jenis Fail Yang Dibenarkan?
CodeIgniter: Menyelesaikan Isu Muat Naik "Jenis Fail Tidak Dibenarkan"
Dalam senario muat naik CodeIgniter ini, pengguna menghadapi ralat yang menunjukkan bahawa cubaan muat naik jenis fail tidak dibenarkan. Walaupun menyatakan jenis fail yang dibenarkan dalam pengawal, format fail tertentu, seperti video WMV, gagal dimuat naik.
Semasa proses muat naik, CodeIgniter cuba menentukan jenis MIME fail. Walau bagaimanapun, dalam beberapa kes, Firefox atau penyemak imbas lain mungkin tersalah mentafsir sambungan fail sebagai jenis MIME. Ini boleh membawa kepada ralat "jenis fail tidak dibenarkan" apabila jenis MIME tidak dikenali dalam konfigurasi.
Untuk menyelesaikan isu ini, kami boleh memeriksa jenis MIME yang dikesan untuk fail yang dimuat naik dengan menambah baris berikut pada kaedah muat naik() pengawal:
<code class="php">$this->_file_mime_type($_FILES[$field]); var_dump($this->file_type); die();</code>
Selepas memuat naik fail WMV, ia akan memaparkan jenis MIME yang dikesan. Contohnya, ia mungkin menunjukkan strim aplikasi/oktet, yang tidak disertakan dalam konfigurasi jenis MIME yang dibenarkan.
Untuk menyelesaikan isu ini, tambahkan jenis MIME yang dikesan pada fail konfigurasi mimes.php:
<code class="php">'wmv' => array('video/x-ms-wmv', 'audio/x-ms-wmv', 'application/octet-stream')</code>
Dengan menambahkan jenis MIME yang betul pada konfigurasi, CodeIgniter akan mengenali jenis fail WMV dan membenarkan muat naiknya.
Perhatikan bahawa konfigurasi penyemak imbas atau mesin boleh memberi kesan kepada tingkah laku muat naik. Sebagai contoh, pada sistem tertentu, hanya muat naik AVI mungkin berjaya, manakala pada sistem lain, semua fail yang disokong boleh dimuat naik. Ini menunjukkan bahawa masalahnya juga mungkin khusus penyemak imbas atau sistem.
Jika pendekatan resolusi jenis MIME tidak menyelesaikan isu muat naik, rujuk sumber berikut untuk penyelesaian masalah lanjut:
Atas ialah kandungan terperinci Mengapa CodeIgniter Menolak Fail WMV Saya Walaupun Saya Menentukan Jenis Fail Yang Dibenarkan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!