2017-12-17 15 views
1

私はユーザーがオーディオファイルをアップロードできるfromを持っています。ファイルがm4aである必要があるため、validationLaravelに使用してファイル形式をチェックしたいと思います。Laravel 5.4でファイル形式を検証する方法は?

私は検証のために次のコードを使用しましたが、ファイルをアップロードすることはできませんm4aファイル。

$this->validate(request(), 
      [ 'title' => 'required', 
       'body' => 'required', 
       'category' => 'required', 
       'audio' => 'mimetypes:audio/x-m4a' 
      ], 
      [ 'title.required' => 'title is missed', 
       'body.required'  => 'body is missed', 
       'category.required' => 'category is missed', 
       'audio.mimetypes' => 'the file format must be m4a' 
      ]); 

はまた、私が代わりにmimetypes:audio/x-m4amimes:audio/x-m4amimes:audio/m4aを使用しますが、問題はすでに存在していました。

どうすれば検証できますか?

+0

あなたはWebサーバーとしてApacheまたはNginxを使用していますか? – RDev

+0

@RDev私はApacheを使用しています – hodhod

答えて

0

使用この:

[ 
     'title' => 'required', 
     'body' => 'required', 
     'category' => 'required', 
     'audio' => 'mimetypes:audio/mp4|mimes:m4a' 
    ] 
+0

私はあなたのソリューションをテストしましたが、m4a拡張子のファイルもアップロードできません。私のテストファイルのMIMEタイプはaudio/x-m4aです。 – hodhod

0

あなたは公式Apache list of mime types にM4Aファイル形式を見ることができるように、関連するオーディオ/ MP4のMIMEタイプを持っています。

まず、mime.confを見て、audio/mp4を含む行がコメントされているかどうかを確認します。コメントを外してapacheを再起動します。

それが存在しない場合は、そのファイルまたはこのディレクティブを使用して.htaccessファイルに追加することができます:あなたは、ファイルのMIMEタイプは、X-M4Aであることが確実な場合は追加し、AddType audio/mp4 .m4a .mp4

それは.htaccessに

関連する問題