redroseamit's avatar

getting error while uploading image by using resource controller

  public function store(Request $request)
    {
       
        $this->validate($request, [
            
            'name' => 'required',
            'details' => 'required',
            'image' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048',
            'status' => 'required',
            
        ]);

        if ($files = $request->file('image')) {
        $Path = 'storage/image/'; // upload path
        $Image = date('YmdHis') . "." . $files->getClientOriginalExtension();
        $files->move($Path, $Image);
        $insert['image'] = "$Image"; 





        $input = $request->all();

        Package::create($input);
        
        $notification = array(
        'message' => 'Package added successfully', 
        'alert-type' => 'success'
        );



        return redirect()->route('packages.index')->with($notification);


    }

0 likes
5 replies
redroseamit's avatar

ParseError syntax error, unexpected 'public' (T_PUBLIC)

   if ($files = $request->file('image')) {
    $Path = 'storage/image/'; // upload path
    $Image = date('YmdHis') . "." . $files->getClientOriginalExtension();
    $files->move($Path, $Image);
    $insert['image'] = "$Image";

when i removing this code everything is fine

MichalOravec's avatar
Level 75

You miss ended curly bracket

if () {
    //
} // this one
2 likes
MichalOravec's avatar

Your code could look like this

public function store(Request $request)
{
    $request->validate([
        'name' => 'required',
        'details' => 'required',
        'image' => 'required|image|mimes:jpeg,png,jpg,gif,svg|max:2048',
        'status' => 'required'
    ]);

    if ($files = $request->file('image')) {
        $files->move('storage/image/', $image = date('YmdHis').'.'.$files->getClientOriginalExtension());
    }

    Package::create($request->except('image') + [
        'image' => $image ?? null
    ]);

    return redirect()->route('packages.index')->with([
        'message' => 'Package added successfully',
        'alert-type' => 'success'
    ]);
}

But I would use a form request.

1 like

Please or to participate in this conversation.