首页 > 解决方案 > 我有 4 行 4 列,每行显示来自不同表的图像如何更新 laravel 框架中的任何图像

问题描述

laravel 框架的更新功能

public function update(Request $request, $id)
 {
  if(isset($_POST['commer']))  
    {
      $commercial = BestCommercialPhoto::findOrFail($id);
      $input = $request->all();`enter code here`
      if($file = $request->file('file'))
       {        
        $name = time().$file->getClientOriginalName();
        $file->move('images',$name);
        $input['file'] = $name;
       }
      $commercial->update($input);
    }
  elseif(isset($_POST['fash'])) 
   {
    $fashion = BestFashionPhoto::findOrFail($id);
    if($file = $request->file('file')){
    $name = time().$file->getClientOriginalName();
    $file->move('images',$name);
    $input['file'] = $name;
    }
   $fashion->update($input);
  }
 elseif(isset($_POST['wed']))
 {
  $wedding = BestWeddingPhoto::findOrFail($id);
  if($file = $request->file('file')) {
  $name = time().$file->getClientOriginalName();
  $file->move('images',$name);
  $input['file'] = $name;
  }
  $wedding->update($input);
 }
 elseif(isset($_POST['make']))
 {
  $making = BestMakingPhoto::findOrFail($id);
  if($file = $request->file('file'))
  {
   $name = time().$file->getClientOriginalName();
   $file->move('images',$name);
   $input['file'] = $name;
   }
  $making->update($input);
  }
 else 
 {
  return "Not Working Properly";
 }
}

这是编辑的代码 public function edit($id) { $commercial = BestCommercialPhoto::findOrFail($id); return view('admin.bestPhoto.edit_comm',compact('commercial')); }

下面是编辑页面的 HTML 代码。如果单击包含[在此处输入图像描述][1] 4 个时尚类别图像的第二行,我将无法更新。如果我单击更新时尚类别图像,它会显示第一行图像如何更新不同行的图像

<form method="post" action="/admin/bestPhoto/{{$commercial->id}}" enctype="multipart/form-data">
<input type="hidden" name="_method" value="PATCH">
{{ csrf_field()}}     
 <div class="card shadow-lg">
  <div class="card-body">                       
   <div class="form-group">
    <div class="text-center">
     <img class="img-fluid" src="/images/{{$commercial->file}}">
    </div>
   </div>
   <div class="form-group">
    <div class="text-center">
     <input type="file" name="file" required>
    </div>
   </div>
  <div class="form-group" style="width:25%">
   <div class="text-center" >
    <button name="commer" class="btn btn-outline-primary" type="submit" 
       style="width: 50%;">Save
    </button>
   </div>
 </div>
</div>                                             
</div>
</form>

标签: phplaravel

解决方案


推荐阅读