Как загрузить файл PDF или сделать c файл в laravel - PullRequest
0 голосов
/ 10 марта 2020

Я пытаюсь загрузить файл pdf или do c на веб-сайт, созданный в laravel. Это моя страница лезвия.

          <form action="{{ route('file.upload.post') }}" method="POST" enctype="multipart/form-data">
            @csrf
            <div class="row">
                <input type="text" class="form-control-file" name="title" id="title" aria- 
             describedby="fileHelp", placeholder="title">
                <input type="text" class="form-control-file" name="firstName" id="firstName" aria- 
        describedby="fileHelp", placeholder="First Name">
                <input type="text" class="form-control-file" name="lastName" id="lastName" aria-describedby="fileHelp", placeholder="Last Name">
                <input type="text" class="form-control-file" name="isReviewed" id="isReviewed" aria-describedby="fileHelp", placeholder="isReviewed">

                <div class="col-md-6">
                    <input type="file" name="paper" class="form-control">
                </div>

                <div class="col-md-6">
                    <button type="submit" class="btn btn-success">Upload</button>
                </div>

            </div>
        </form>

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

public function fileUploadPost(Request $request)
{
    $request->validate([
        'firstName'=>'required',
        'lastName'=>'required',
        'isReviewed'=>'required',
        'paper' => 'required|mimes:pdf,xlx,csv|max:2048',
    ]);

    $Submission= new Submission;
    $Submission->title= $request['title'];
    $Submission->first_name= $request['firstName'];
    $Submission->last_name= $request['lastName'];
    $Submission->isReviewed= $request['isReviewed'];


  $fileName= time().'.'.$request->paper->extension();
    $old_path = Request::file('paper')->getPathName(); Storage::disk('Paper')->move($old_path, 
     public_path($fileName));
    $Submission->save();
    return back()
        ->with('success','You have successfully upload file.')
        ->with('file',$fileName);

}

Я получаю сообщение об ошибке, в котором говорится, что не статический c метод Illuminate \ Http \ Request :: file () не должен вызываться Статически, чтобы это исправить, я

использую Illuminate \ Support \ Facades \ Request

вместо

, использую Illuminate \ Http \ Request;

, но потом я получаю ошибка, говорящая, что я не могу использовать проверку. Любая помощь приветствуется.

1 Ответ

1 голос
/ 10 марта 2020

Вам не нужно использовать фасад для этого. Вы все еще можете использовать стандартный Illuminate\Http\Request класс.

Чтобы получить файл, вы должны использовать:

$request->file('paper')

вместо

Request::file('paper')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...