问题
I have read couple of post regarding the issue of checking the file extension while upload a file using laravel.
I have the same issue and didn't file the solution even if spending an hour behinding the silly thing.
this is my validation rule looks like.
public function rules()
{
return [
'sheet' => 'required',
'file' => 'mimes:csv',
];
}
However required is working file but on mimes.
I tried couple of other ways i founded like:
return [
'sheet' => ['required', 'mimes:csv']
]
return [
'sheet' => ['required', 'mimes:text/csv']
]
return [
'sheet' => 'required|mimes:text/csv'
];
return [
'sheet' => 'required|mimes:csv'
];
return [
'sheet' => 'required',
'extension' => 'required|in:csv'
];
Above none of line is working sometime says not valid file sometime passes through the validation.
I doubted for invalid file, then I downloaded fresh sample file from Microsoft site. That not the issue at all.
Can anyone help me?
Thanks!
回答1:
Surprised!
Its getting text/plain
mime for the CSV, that was the cause of the issue.
So to fix this I just found which extension is responsible for text/plain
and I found txt so i just updated my rules:
return [
'sheet' => 'required|mimes:csv,txt'
];
来源:https://stackoverflow.com/questions/35570540/laravel-mime-issue-while-validating-csv-file