图像源不可读Laravel 5.3

时间:2017-06-15 08:31:04

标签: php file-upload laravel-5.3

我对Laravel有一个关注,就是一篇文章的版本。该文章的照片版本无法正常工作。

我有以下错误:image source not readable

我是Laravel的新手,但我想这样做,如果在版本中已经存在图像,他会保留原始照片:)

我的cotroller:

public function update(Request $request, $id){
    $article = Article::find($id);
    $categorie = Categorie::find($article->idcategorie);
    if($article == null)
        return redirect("/home");
    $validation=[];
    $langues=Langue::all();
    foreach ($langues as $key => $value) {
        $validation["titrel".$value->id]='max:255';
    }
    $this->validate($request, $validation);
    DB::beginTransaction();
        try{
        $file=$request->file('upload');
        $path=storage_path('app/public/'.$categorie->libelle);
        if(!Filemgr::exists($path)) {
            Filemgr::makeDirectory($path.'/mini', 0766, true);
            Filemgr::makeDirectory($path.'/micro', 0766, true);
        }            
        Image::make($file)
            ->resize(1400, null, function ($constraint) {
                $constraint->aspectRatio();
            })
            ->save($path.'/'.$article->url);
        Image::make($file)
            ->resize(900, null, function ($constraint) {
            $constraint->aspectRatio();
            })
            ->save($path.'/mini/'.$article->url);
        Image::make($file)
            ->resize(600, null, function ($constraint) {
                $constraint->aspectRatio();
            })
            ->save($path.'/micro/'.$article->url);            
        foreach($langues as $key=>$value){
            $text=TextArticle::firstOrNew(['idlangue' => $value->id,'idarticle'=>$id]);
            $text->titre=$request->input('titrel'.$value->id);
            $text->save();
        }            
        DB::commit();
        }
        catch(Exception $e){
            DB::rollBack();                
        }
        $categorie=Categorie::find($article->idcategorie);
    return redirect("/categorie/".$categorie->libelle);
}

事先谢谢你:)

1 个答案:

答案 0 :(得分:1)

使用它:

if ($request->hasFile('upload')) {
//your code
}

它应该工作:)