Не удалось загрузить изображение Laravel 5.8 - PullRequest
0 голосов
/ 09 мая 2019

Я не могу загрузить файл изображения с Laravel.Я продолжаю получать the photo failed to upload.

Моя форма:

<form id="save_report_form" action="{{ route('report.add') }}" method="post" enctype="multipart/form-data">
    <input type="file" name="image" class="upload-photo" id="image" accept="image/png,image/jpg" />
</form>

Мой контроллер:

public function add(Request $request)
{
    $this->validate($request, [
        'image' => 'required|image|mimes:png,jpg',
    ]);

    // Get all file details and store in public
    $disk        = Storage::disk('public');
    $file        = $request->file('image');
    $ext         = $file->getClientOriginalExtension();
    $filename    = $file . '.' . $ext;
    $disk->put($filename, file_get_contents($file), 'public');

    return redirect()->back();
}

Я изменил upload_max_filesize на 20mb для моего разработчикасервер.

Где я могу найти причину сбоя при загрузке?Я ничего не получаю в журнале Laravel.Что я пропустил.Спасибо.

Ответы [ 2 ]

0 голосов
/ 09 мая 2019

Вы можете проверить, что является результатом $ filename с помощью функции dd () / dd ($ filename) и посмотреть, соответствует ли это ожидаемому.Если это не так, вероятно, есть проблема.Также, насколько я вижу в официальных документах (https://laravel.com/docs/5.8/filesystem#file-visibility), пример использования метода put () приведен без php native file_get_contents (проверьте это также).

0 голосов
/ 09 мая 2019

вы можете заменить

 $filename    = $file . '.' . $ext;

с

$filename = $request->image->getClientOriginalName();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...