2017-08-03 153 views
0

我試圖讓我的驗證器工作,但由於某種原因,它只接受PDF文件。我想讓驗證器適用於所有人。Laravel輸入文件驗證

$filePathTemp = Input::file('cv'); 
$file = array('cv' => $filePathTemp); 
$rules = array('cv' => 'mimes:doc,pdf,docx'); 
$validator = Validator::make($file, $rules); 

任何想法爲什麼此解決方案不工作?

回答

2

把這段代碼

$validator = Validator::make($request->all(), [ 
      'file' => 'required|max:10000|mimes:doc,docx,pdf' 

]); 

和配置/ mimes.php添加以下MIME類型:

'doc' => array('application/msword', 'application/vnd.ms-office'), 
'docx' => array('application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'application/zip'), 

希望這可以幫助你!

+0

我沒有這個文件mimes.php。我應該創建它嗎? – shAkur

+0

是的,你可以使用這個鏈接https://github.com/jasonlewis/laravel.com/blob/master/application/config/mimes.php – Margi

+0

cv必須是doc,docx,pdf類型的文件。即使上傳的文件是文檔,也是返回的消息 – shAkur

0

我想你可以試試這個:

$validator = Validator::make($request->all(), [ 
      'cv' => 'mimes:doc,pdf,docx' 
     ]); 

希望這對你的工作!

+0

它仍然說doc和docx文件格式錯誤... – shAkur

0

它的工作原理是將txt類型添加到其他mime中