move_uploaded_file(): Не удается переместить ‘C:xampptmpphp4496.tmp» в «общедоступный/загрузить/member_newBOm3f0T1kL.png» в Laravel 8

#laravel

Вопрос:

Я пробовал делать так.

 if ($imageimage) {
    if ($member->image != null) {
        @unlink($member->image);
    }
    $image_name = Str::random(10);
    $ext = strtolower($imageimage->getClientOriginalExtension());
    $image_name = $image_name . '.' . $ext;
    $upload_path = 'public/upload/member_new/';

    $image_description = $upload_path . $image_name;
    $imageimage->move($upload_path, $image_name);
    if ($ext=='jpg' || $ext=='png'|| $ext=='jpeg'){
        $member->image = $image_description;
        dd('success');
    }else{
        Toastr::error('message', 'Image is not valid!!');
        return redirect()->back();
    }
} 

Не удалось переместить файл «C:xampptmpphp4496.tmp» в «public/загрузить/member_newBOm3f0T1kL.png» (move_uploaded_file(): Не удается переместить ‘C:xampptmpphp4496.tmp’ в ‘public/загрузить/member_newBOm3f0T1kL.png’).

Комментарии:

1. попробуйте $upload_path = public_path('upload/member_new')); и убедитесь, что у вас есть каталог в общей папке

2. Спасибо, но я не работаю. Та же ошибка.

Ответ №1:

Вы должны использовать хранилище laravel. https://laravel.com/docs/8.x/filesystem#specifying-a-file-name

 $request->file->storeAs($path, $file_name, $disk);