I'm using Laravel form request to validate a array of input group. I need to check files using a loop for a custom validation. But it shows this error.
Error
Call to undefined method Symfony\Component\HttpFoundation\ParameterBag::hasFile()
My HTML inputs (createUser.blade.php)
<input type="text" name="users[0][name]">
<input type="number" name="users[0][age]">
<input type="file" name="users[0][profile_pic]">
<input type="text" name="users[1][name]">
<input type="number" name="users[1][age]">
<input type="file" name="users[1][profile_pic]">
My Form Request (CreateUserFormRequest.php)
dd($this->request->hasFile('users');
Inside FormRequest class if you want to check whether request has value or not then you can do like below
$this->has('users')
If you want to check request has file or not then
$this->hasFile('logo')
also make sure input type is file
To check all data in request then
$this->all()
For files make sure input type is file
<input type="file" name="users[1][profile_pic]">
Also make sure enctype="multipart/form-data" in form tag
<form method="POST" action="" enctype="multipart/form-data">
Updated
<form method="POST" action="{{route("testing")}}" enctype="multipart/form-data">
@csrf
<input type="number" name="users[0][name]">
<input type="number" name="users[0][age]">
<input type="file" name="users[0][profile_pic]">
<input type="number" name="users[1][name]">
<input type="number" name="users[1][age]">
<input type="file" name="users[1][profile_pic]">
<button type="submit">Submit</button>
</form>
and in Form request
foreach ($this->users as $key=>$value){
if($value['profile_pic']!=null){
dump($value['profile_pic']);
}
}
If you are looking for file validation then you can do the following
public function rules()
{
return [
'users.*.profile_pic'=>'required|file'
];
}
and in your view
<input type="file" name="users[0][profile_pic]">
{{ $errors->first('users.0.profile_pic') }}
<input type="file" name="users[1][profile_pic]">
{{ $errors->first('users.1.profile_pic') }}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With