Не могу загрузить несколько изображений на Laravel - PullRequest
0 голосов
/ 02 июля 2019

Допустим, я хочу загрузить 3 изображения a.jpeg, b.jpeg и c.jpeg

Я успешно выбрал изображения, которые хочу загрузить. Отправили их в контроллер и проверили с помощью print_f (), чтобы увидеть, действительно ли они в контроллере. Они были.

Тогда, когда я проверил мою папку img, только c.jpeg были успешно загружены, а остальные нет.

В чем причина этого?

// AdminController
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use DB;
use App\Http\Redirect;
use Image;

// Route 
  Route::post('/upload', 'AdminController@store')->name('upload');

// AdminController@store:

    public function store(Request $request){
      if ($request->hasfile('images')) {
        foreach ($request->images as $image) {
          $name = time() . '.' . $image->getClientOriginalExtension();
          print_r($name."<br>"); // to see if they're actually passed.
          Image::make($image)->save(public_path('img/new/'. $name));
        }

      }
      return('done');
    }


    <form action="{{ route('upload') }}" method="post" enctype="multipart/form-data">
      <div class="form-group">
        <label for="exampleInputFile">File input</label>
        <input type="file" name="images[]" id="exampleInputFile" multiple />
      </div>
      {{ csrf_field() }}
      <button type="submit" class="btn btn-default">Submit</button>
    </form>

1 Ответ

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

Проблема заключалась в том, что я использовал функцию time(), а не rand() или любую аналогичную функцию, которая возвращает случайное значение.

Так что код теперь должен выглядеть следующим образом:

public function store(Request $request){
  if ($request->hasfile('images')) {
    foreach ($request->images as $image) {
      $name = rand() . '.' . $image->getClientOriginalExtension();
      print_r($name."<br>"); // to see if they're actually passed.
      Image::make($image)->save(public_path('img/new/'. $name));
    }

  }
  return('done');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...