Я использую dropzone.js, и я пытаюсь получить каждое изображение, чтобы я мог хранить их в разных столбцах в одной строке в базе данных, например
$image1 = $request->file('file');
$image2 = $request->file('file');
$image3 = $request->file('file');
Теперь он работает так, что несколько изображений загружаются и сохраняются в новые строки следующим образом:
public function storePfphotos(Request $request)
{
$img = $request->file('file');
$folder = 'portfolio';
$imgname = $img->getClientOriginalName();
$img->move($folder, $imgname);
$request->user()->pfphotos()->create([
'imgpath' => 'portfolio/' . $imgname,
]);
Но я этого не хочу. Может кто-нибудь сказать мне, как это сделать, я думаю, что массив может работать, но я действительно не знаю
По умолчанию я считаю, что Dropzone отправляет несколько загрузок в виде отдельных запросов к вашему storePfPhotos()
.
Вы хотите установить значение конфигурации multipleUploads
для Dropzone равным TRUE
. Это отправит все изображения в один запрос (в виде массива), и вы сможете перебирать их и хранить, как вам нравится.
http://www.dropzonejs.com/#config-uploadMultiple
foreach($request->file('file') as $index => $file) {
// in an array
$files[] = $file;
// or separate variables
$file_name = 'file_'.$index;
$$file_name = $file
}