Ab.net's avatar

How to update an image

i was working on a project and i am stuck at my update method i couldnt find any way to update my image.

can any one help me with the update method ?

this is the store method

public function store(Request $request, Home $home){

    $this->validate($request, [

        'title_slider' => 'required',
        'description_slider' => 'required',
        'button_slider' => 'required',
        'button_link_slider' => 'required',
        'featured_image' => 'required',


    ]);

    $destination='uploads/HomePage/Slider';

    $fileName=$request->file('featured_image')->getClientOriginalName();

    if( !$request->file('featured_image')->move($destination, $fileName))

    {

        return redirect()->back()->withErrors(['Something is wrong', 'Please Ab' ]);
    }



    $data = $request->all();
    $data['featured_image'] = "{$destination}/{$fileName}";
    $home->create($data);

    Session::flash('success','Slider is uploaded ');
    return redirect('home');


}
0 likes
6 replies
eskiesirius's avatar

you can just..

$home->title_slider = $data['title_slider '];
$home->description_slider= $data['description_slider'];
$home->button_slider= $data['button_slider'];
$home->button_link_slider= $data['button_link_slider'];
$home->featured_image = $data['featured_image'];
$home->save();
Ab.net's avatar

I want to replace the old image in the destination folder

AddWebContribution's avatar

You should try this:

//Update your code like
$destination='uploads/HomePage/Slider';
$file = $request->file('featured_image');

if($file !== null) {
  
  $fileName = $file->getClientOriginalName();
  $file->move($destination, $fileName);

}

Hope this help for you !!!

Ab.net's avatar

thanks for the reply ..and i tried the code but it is giving me an error

my code is...

public function update(Request $request, $id, Home $home){

     $this->validate($request, [

         'title_slider' => 'required',
         'description_slider' => 'required',
         'button_slider' => 'required',
         'button_link_slider' => 'required',
         'featured_image' => 'required',


     ]);



     $destination='uploads/HomePage/Slider';
     $file = $request->file('featured_image');

     if($file !== null) {

         $fileName = $file->getClientOriginalName();
         $file->move($destination, $fileName);
         $data['featured_image'] = "{$destination}/{$fileName}";

     }




     $data = $request->all();
     $home->update($data);

     Session::flash('success','Slider is uploaded ');
     return redirect('home');


     }
Ab.net's avatar

wow!! finally i pulled it off!! tnx guys!! was simple mistake!

public function update(Request $request, $id, Home $home){

     $this->validate($request, [

         'title_slider' => 'required',
         'description_slider' => 'required',
         'button_slider' => 'required',
         'button_link_slider' => 'required',
         'featured_image' => 'required',


     ]);

     $data=Home::findOrFail($id);
     $data->update($request->all());

     if ($request->hasFile('featured_image'))
     {
         $destination='uploads/HomePage/Slider';
         $file = $request->file('featured_image');

         $fileName=$request->file('featured_image')->getClientOriginalName();
         $data->featured_image = $destination.'/'.$fileName;
         $file->move($destination, $fileName);
         $data->save();
     }
     return redirect('dashboard');

     }

Please or to participate in this conversation.