当前位置:首页 > CMS教程 > 其它CMS > 列表

laravel实现上传图片并在页面显示的例子

发布:smiling 来源: PHP粉丝网  添加日期:2022-01-02 12:56:38 浏览: 评论:0 

今天小编就为大家分享一篇laravel实现上传图片并在页面显示的例子,具有很好的参考价值,希望对大家有所帮助,一起跟随小编过来看看吧。

1:上传图片

  1. public function updateFeedbackImg(Request $request
  2.   { 
  3.     $bool = false; 
  4.     $upload_file = $request->file("pic"); 
  5.     if ($upload_file->isValid()) { 
  6.       $realPath = $upload_file->getRealPath(); 
  7.       $bool = Storage::disk('feedback')->put($request->get('id') . '.png'file_get_contents($realPath)); 
  8.     } 
  9.     if ($bool == true) { 
  10.       $company = CompanyState::find($request->get('id')); 
  11.       $company->picpath_ = $request->get('id') . '.png'
  12.       $company->save(); 
  13.       return '{"statusCode":"200", "message":"上传成功", "navTabId":"uploadFeedbackImg", "forwardUrl":"evaluation/queryCompanyFeedback/' . session('plan_id') . '", 
  14. "callbackType":"forward"}'; 
  15.     } else { 
  16.       return '{"statusCode":"300", "message":"上传失败","callbackType":"closeCurrent"}'
  17.     } 
  18.   } 

2:html

  1. <img src="{{ url('evaluation/showImage/'.$company->picpath_) }}" 
  2.     οnclick="this.width+=500;this.height+=500; javascript:window.open(this.src);" 
  3.     style="cursor:pointer; width: 500px; height: 800px;border:1px solid #000000" 
  4.     name="photopath"/> 

3:设置对应的路由

  1. Route::group(['prefix' => 'evaluation'], function () { 
  2.   //查看图片 
  3. Route::get('/lookthrough/{company_id}''EvaluationController@lookthrough'); 
  4. //放大图片 
  5. Route::get('/showImage/{src}''EvaluationController@showImage'); 
  6. }); 

4:显示图片

  1. public function lookthrough($company_id
  2.  { 
  3.    $company = CompanyState::getRecordById($company_id); 
  4.    return view('panels.EvaluationManagement.FeedbackInfo.FeedbackImg', ['company' => $company[0]]); 
  5.  } 
  6. public function showImage($src
  7.  { 
  8.    $path = storage_path() . '/feedback/' . $src;  //获取图片位置的方法 
  9.    return response()->file($path); 
  10.  }

Tags: laravel上传图片

分享到: