Search code examples
laravellaravel-5laravel-4postmanlaravel-api

Image store but not show proper path in laravel API


How can i store actually path in database and how can i fetch image in API? This is output of API in postman enter image description here

This is database which show store path of image but its wrong..

enter image description here

 public function store(Request $request)
    {
        
        $event = $request->all(); 
           if ($request->hasFile('file')) {
$destinationPath = public_path().'/public/img/';
$file = $request->file;
$fileName = time() . '.'.$file->clientExtension();
$file->move($destinationPath, $fileName);
$input['e_image'] = $fileName;
}

            // $return['success'] = true,
            // $return['data'] = $event,
            // $return['msg'] = "this is message ";
             $success['status'] = true;
             $success['data'] = [$event];
             $success['message'] ="Event created successfully!";
             // $success['event'] = $event;
             return response()->json($success); 
    }


Solution

  • $file = new YOURMODELNAME(); please enter your model name in this line of code

    public function store(Request $request)
         {
            $input = $request->all();
            $rules = array(
                'e_image' => 'required|mimes:jpeg,png,jpg,doc,docx,pdf,mp4,mov,ogg,qt',
           'e_group' => required,
           'e_invite'=>required,
            );
            $validator = Validator::make($input, $rules);
            if ($validator->fails()) {
                $arr = array("status" => 400, "message" => $validator->errors()->first(), "data" => array());
            } else {
                try {
                    $file = $request->file('e_image');
                    $input['e_image'] = time() . '.' . $file->getClientOriginalExtension();
                    $destinationPath = public_path('/img/');
                    $file->move($destinationPath, $input['e_image']);
    
    
    
    
                    $file = new YOURMODELNAME();
    
    
    
    
    
                    $file->e_image = $input['e_image'];
                    $file->e_group = $input['e_group'];
                    $file->e_invite = $input['e_invite'];
                    $file->save();
                    $file->e_image = url('public/img/' . $file->e_image);
    
    
                    $arr = array("status" => 200, "message" => "file upload Successfully", "data" => $file);
                } catch (\Exception $ex) {
                    if (isset($ex->errorInfo[2])) {
                        $msg = $ex->errorInfo[2];
                    } else {
                        $msg = $ex->getMessage();
                    }
                    $arr = array("status" => 400, "message" => $msg, "data" => array());
                }
            }
            return \Response::json($arr);
        }