許可されたファイル タイプを指定したにもかかわらず、CodeIgniter が WMV ファイルを拒否するのはなぜですか?

Linda Hamilton
リリース: 2024-10-31 11:19:29
オリジナル
886 人が閲覧しました

Why Does CodeIgniter Reject My WMV Files Even Though I Specified Allowed File Types?

CodeIgniter: 「ファイルタイプが許可されていない」アップロードの問題を解決する

この CodeIgniter アップロード シナリオでは、ユーザーは、アップロードしようとしたことを示すエラーに直面します。ファイルタイプは許可されていません。コントローラーで許可されるファイル タイプを指定しているにもかかわらず、WMV ビデオなどの特定のファイル形式はアップロードに失敗します。

アップロード プロセス中に、CodeIgniter はファイルの MIME タイプを判断しようとします。ただし、場合によっては、Firefox またはその他のブラウザがファイル拡張子を MIME タイプとして誤って解釈する可能性があります。これにより、MIME タイプが構成で認識されない場合に「ファイルタイプが許可されていません」エラーが発生する可能性があります。

この問題を解決するには、次の行をコントローラーの Upload() メソッド:

<code class="php">$this->_file_mime_type($_FILES[$field]); var_dump($this->file_type); die();</code>
ログイン後にコピー

WMV ファイルをアップロードすると、検出された MIME タイプが表示されます。たとえば、許可されている MIME タイプの設定に含まれていない application/octet-stream が表示される場合があります。

問題を解決するには、検出された MIME タイプを mimes.php 設定ファイルに追加します。

<code class="php">'wmv' => array('video/x-ms-wmv', 'audio/x-ms-wmv', 'application/octet-stream')</code>
ログイン後にコピー

設定に正しい MIME タイプを追加すると、CodeIgniter は WMV ファイル タイプを認識し、そのファイルのタイプを許可します。 Upload.

ブラウザまたはマシンの構成がアップロード動作に影響を与える可能性があることに注意してください。たとえば、特定のシステムでは AVI アップロードのみが成功する可能性がありますが、他のシステムではサポートされているすべてのファイルをアップロードできます。これは、問題がブラウザまたはシステム固有である可能性があることを示唆しています。

MIME タイプ解決アプローチでアップロードの問題が解決しない場合は、次のリソースを参照してさらなるトラブルシューティングを行ってください:

  • CodeIgniter フォーラムのスレッド
  • Firefox での Mimetype の破損
  • 回避策IE の MIME タイプマングリング

以上が許可されたファイル タイプを指定したにもかかわらず、CodeIgniter が WMV ファイルを拒否するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!