Как сделать dd ($ request-> hasFile ('photo')); верните TRUE и загрузите изображение в Laravel 5.4 - PullRequest
0 голосов
/ 12 июля 2019

Я хочу загрузить изображение, но мое изображение не может быть загружено, и я проверяю с помощью dd($request->hasFile('supply_photo')); Я получаю возврат ЛОЖЬ, и я проверяю снова с dd($request->all()) Я получаю

"_token" => "ETFJYrRIe6MWqk0LAwXXfBBIHEldHBP4bDeICbpi" 
"item" => "1" 
"tgl_date" => "2019-07-11" 
"use_date" => "2019-07-12" 
"details" => "1" 
"photo" => "A.jpg" ]

У меня есть контроллер

if($request->hasFile('photo') == true){
                $photo = Validator::make($request->all(), [
                    'photo' => 'image|mimes:jpeg,png,jpg,gif,svg',
                ]);

    if($photo->fails()){
                return redirect()->back()->with('warning', 'Image size should be 2MB or less');
        }            
        $image = $request->file('photo');
        $image_name = rand().'.'. $image->getClientOriginalExtension();
        $destination_path = public_path('/item');
        $image->move($destination_path, $image_name);
    }
        $data->item = $request->item;
        $data->details = $request->details;
        $data->tgl_date = $request->tgl_date;
        //$leave->leave_days = $request->days;
        $data->use_date = $request->use_date;
        $data->id = $id;
        $data->photo = $image_name;
        $data->save();

И мой взгляд

 <label for="photo">Photo</label>
<form action="" method="post" enctype="multipart/form-data">
<input type="file" class="form-control" name="photo"> 

1 Ответ

0 голосов
/ 12 июля 2019

В приложении Laravel необходимо использовать хранилище Laravel, попробуйте посетить https://laravel.com/docs/5.8/filesystem

в файле загрузки приведен пример кода

use Illuminate\Support\Facades\Storage;
Storage::put('file.jpg', $contents);
...