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.