Загрузите изображение в две разные папки, используя Laravel 5.8 - PullRequest
0 голосов
/ 27 мая 2019

Этот код сохраняет изображение только в одной папке.Я хочу загрузить изображение одновременно в две разные папки, например, папка 1 и папка 2

мой контроллер

protected function validator(array $data)
{
    return Validator::make($data, [

       'photo_jpeg' => 'required|image|mimes:jpeg,png,jpg|max:2048',


    ]);
}
protected function create(array $data)
{
    $photo_jpeg= time() . '.' . $data['photo_jpeg']->getClientOriginalExtension();
            $data['photo_jpeg']->move(base_path() . 'public/folder-one', $photo_jpeg);

return user::create([

        'photo_jpeg' => $photo_jpeg,


       ]);

}

Ответы [ 2 ]

2 голосов
/ 27 мая 2019

Пожалуйста, убедитесь, что эти вещи. если вы собираетесь обновить файл в другом месте.

  1. Папка должна иметь разрешение на запись.
  2. Путь к каталогу должен быть определен как абсолютный и указывать на правильное местоположение.

Теперь измените, проверьте изменения в коде следующим образом.

$fileName = time() . '.' .$request->file('User_jpeg')->getClientOriginalExtension();

$storageLocation = '../../WEBSITE-FILE/TEAM/USER';  //it should be absolute path of storage location.

$request->file('User_jpeg')
        ->storeAs($storageLocation, $fileName);

$request->file('User_jpeg')
        ->storeAs($storageLocation . '/User_Profile_Image', $fileName);

редактирует:

В соответствии с запрошенным текущим статусом, попробуйте это.

public function store(Request $request) { 
    $this->validate($request, [ 'image' => 'required|image|mimes:jpeg,png,jpg|max:2048', ]); $input['image'] = time().'.'.$request->image->getClientOriginalExtension();

    $request->image->move(public_path('folder-a'), $input['image']);

    $fileSrc = public_path('folder-a') . $input['image'];
    $fileDest = public_path('folder-b') . $input['image'];

    \File::copy($fileSrc, $fileDest);

    Service::create($input); 

    return back()->with('success',' CREATED SUCCESSFULLY .'); 
}
0 голосов
/ 27 мая 2019

В контроллере:

public function store(Request $request){

        if($request->User_jpeg != ''){ //check file has selected 

            $file = $request->User_jpeg;

            $path = base_path('public/folder-one/');

            $filename = time() . '_' . $file->getClientOriginalName();

            $file->move($path, $filename); 

            \File::copy($path.$filename,base_path('public/folder-two/'.$filename));
        }

        user::create([
            'photo_jpeg' => $filename,
        ]);

    }

В файле маршрута (web.php):

Route::post('save-image', 'YourController@store');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...