Laravel $ file-> move () не показывает перемещенный файл в новой папке? - PullRequest
0 голосов
/ 24 августа 2018

Я пытаюсь взять файл, загруженный пользователем, и переместить его в папку с именем «Images» внутри моего открытого файла Laravel, мне удалось заставить его успешно работать без ошибок, моя единственная проблема -что загруженный файл не будет отображаться внутри папки / Images, мой метод будет следующим:

public function contactPost(Request $request)
 {

    if($request->hasFile('attachment'))
    {
        $file = $request->file('attachment');
        $file->move('Users/jvb/laravel/public/Images', $file->getClientOriginalName());
        echo 'File name '.$file->getClientOriginalName();
        echo "<br>";
    } else {
        return "No";
    }
 }

Файл blade.php выглядит следующим образом:

@extends('layouts.master')


 @section('content')
<form method="POST" enctype="multipart/form-data" action="{{ route('contactPost') }}">

    @csrf

    <div class="form-group">
        <input class="form-control" name='name' type="text" placeholder="Name">    
    </div>

    <div class="form-group">
        <input class="form-control" name='email' type="email" placeholder="Email">    
    </div>

    <div class="form-group">
        <textarea class="form-control" name="message" id="" cols="30" rows="10" placeholder="Message"></textarea>
    </div>

     <div class="form-group">
        <input class="form-control" name="attachment" type="file">    
    </div>

    <div class="form-group">
        <button type="submit" class="form-control">Send Message</button>
    </div>

</form>
 @endsection

Расположение папки изображенияв моем проекте laravel есть:

location of Image folder

Что я делаю не так и как это исправить?

1 Ответ

0 голосов
/ 24 августа 2018

Используйте public_path() вместо абсолютного пути

 $file->move(public_path()."/Images/", $file->getClientOriginalName());

ОБНОВЛЕНИЕ Чтобы сохранить изображение в вашей базе данных

 $user = new User; //model
  $filename = $file->getClientOriginalName();
  $file->move(public_path("Images"), $filename);
  $path = '/Images/' . $filename;
  $user->avatar = $path;
  $user->save();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...