首页 > 解决方案 > 上传后一些图像被复制 - laravel

问题描述

我正在使用一个上传多个图像的功能,它在本地运行良好,但部署后我遇到了这个重复问题。我上传了 img1 和 img2 和 img3 但在数据库中我只找到其中​​一个像 img1.jpg 和文件夹中的相同内容。

public function _articleGalleryUpload(Request $request)
{
    $article = Blog::find($request->id);
    $img = $request->Otitle;
    //dd($img);

    $request->validate([
        'images'=> 'required',
        'images.*'=> 'image|mimes:jpg,png,jpeg|max:4000'
    ]);

    if(!File::isDirectory('assets/images/blogs/gallery/'.$img)){ 
        File::makeDirectory('assets/images/blogs/gallery/'.$img);
    }

    $images = $request->file('images');

    if($request->hasFile('images')) 
    {
    
    foreach( $images as $image )
    {
    //$extension = $file->getClientOriginalExtension();
    $ImageName = '_' . time() .'.' . $image->getClientOriginalExtension();
    $path = $image->move(('assets/images/blogs/gallery/'.$img), $ImageName);
    $imageP = Image::make($path)->resize(600, null, function ($constraint) {
        $constraint->aspectRatio();
    });


    $galerie = new blogsGallery;
    $galerie->Img = $ImageName;
    $galerie->idart = $request->id;
    $galerie->alt = $img;

    $imageP->save();
    $galerie->save();
    

    }

    return back()->with('success', 'les images ont été téléchargées');

    }
}

我尝试使用数组来存储图像的名称,但它不起作用,它上传一张图像而不是多张 .

标签: laravel

解决方案


您的代码有一个问题。
$path = $image->move(('assets/images/blogs/gallery/'.$img), $ImageName);
此代码是错误的。 $img是多个图像的一个名称。


推荐阅读