Problem
File not being uploaded on server through PHP – cURL
Solution
The CURLFile interface must be used to upload files.
Code
<?php $url = 'http://192.168.1.94:5000/api/v1/upload-picture'; $img = 'img/placeholder.png'; // Form-data $data_array = array( 'id' => 1, 'picture_type' => 'user', 'file' => new CurlFile($img) ); $curl = curl_init($url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($curl, CURLOPT_POSTFIELDS, $data_array); curl_setopt($curl, CURLOPT_SAFE_UPLOAD, false); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; }
Please update if any better alternative.