Не удаётся передать файлы на сервер, переменная $_FILES пуста

Суть такова, я пытаюсь передать файл с клиентского сайта на react.js с помощью axios, используя метод post на сервер php. Вот клиент с которого осуществляется передача данных с файлом:

const data = {
    titleAdv: "",
    linkAdv: "",
    media: "", //(File) Сюда приходит файл из формы для загрузки
  },


  let dataForSendOnServer = new FormData();
dataForSendOnServer.append("newData", data);
const url = "https://www.example.com/writeDataToJson.php";
const options = {
  headers: {
    "Content-type": `multipart/form-data`
  },
};
axios
  .post(url, dataForSendOnServer, options)//осуществление самой передачи данных на сервер
  .then((response) => {
    console.log(response.data);
  })
  .catch((error) => {
    console.error(error);
  });

и серверный файл writeDataToJson.php

$response = array();
$upload_dir = 'uploads/';
$server_url = 'https://www.clubok24.ru/';

if($_FILES['newData']){

    $image_name = $_FILES['newData']['name'];
    $image_tmp_name = $_FILES['newData']['tmp_name'];
    $error = $_FILES['newData']['error'];

    if($error>0){
        $response = array(
            'status' => 'error',
            'error' => true,
            'message' => 'ERROR uploading the file!'
        );
    } else {
        $random_name = rand(1000,1000000).'-'.$image_name;
        $upload_name = $upload_dir.strtolower($random_name);
        $upload_name = preg_replace('/\s+/','-',$upload_name);

        if(move_uploaded_file($image_tmp_name, $upload_name)){
            $response = array(
                'status' => 'error',
                'error' => false,
                'message' => 'Success!',
                'url' => $server_url . '/' . $upload_name
            );
        } else {
            $response = array(
                'status' => 'error',
                'error' => true,
                'message' => 'ERROR uploading the file!'
            );
        }
    }

} else {
    $response = array(
        'status' => 'error',
        'error' => true,
        'message' => 'ERROR - files is empty !'
    );
};
echo json_encode($response);

Всё бы ничего, но при проверке на пустоту, глобальная переменная $_FILES пуста, как ни крути. В чём может быть проблема? Может как-то не так отправляю?


Ответы (0 шт):