hafiz_r's avatar

Failed to upload profile image

public function updateCounselor(Request $request) { $this->validate($request, []);

    $user = Auth::user();

    $user->name = $request->name;
    $user->email = $request->email;





    if ($request->has('password')) {
        $user->password = bcrypt($request->password);
    }

    if ($request->hasfile('avatar')) {
        $avatar = $request->file('avatar');
        $filename = time() . '.' . $avatar->getClientOriginalExtension();
        Image::make($avatar)->resize(300, 300)->save(public_path('/uploads/avatars/' . $filename));

        $user = Auth::user();
        $user->avatar = $filename;
        $user->save();
    }
    $user->save();

    Session::flash('success', 'Account profile updated.');

    return redirect('/counselor/profile');
}
                    @csrf

                    <div class="col-md-10 col-md-offset-1">
                        <img src="/uploads/avatars/{{ $user->avatar }}" style="width:150px; height:150px">
                        <h2>{{$user->name}}'s Profile</h2>
                        <!-- <form enctype="multipart/form-data" action="/counselor/profile" ></form> -->
                        <label> Update Profile Image</label>
                        <input type="file" name="avatar">
                    </div>

Route::group(['middleware' => 'auth:counselor'], function () {

Route::view('/counselor', 'counselor');
Route::get('counselor/profile', ['uses' => 'ProfilesController@indexCounselor', 'as' => 'counselor.profile']);
Route::post('counselor/profile/update', ['uses' => 'ProfilesController@updateCounselor', 'as' =>        'counselor.profile.update']);

});

0 likes
5 replies
hafiz_r's avatar

Other tables gets updated but not the image

siangboon's avatar
Level 54

most common mistake for file upload is did not include this:

 enctype="multipart/form-data"
hafiz_r's avatar

Fixed it with your suggestion and composer require intervention/image

Thanks

Please or to participate in this conversation.