Приходят не все данные с формы обратной связи php + telegram

Всем привет. Недавно у меня появилась острая необходимость подвязать форму обратной связи на api telegram. Соответственно суть главного вопроса такова, что при проверки работоспособности формы на localhost - у меня работает все отлично. То есть бот отсылает информацию, которую оставил пользователь в заявке - перечень данных: Имя, Телефон, Город, ( тема лендинга ), прикрепленный файл. Однако при выгрузке файлов сайта на выделенный сервер в бота прилетают все данные, кроме прикрепленного пользователем файла и я не могу понять где у меня теряется во всей цепи файл оставленный пользователем. Ниже привожу код PHP обработчика:

    const TOKEN = 'MyToken';


    const CHATID = 'ChatID';

    $types = array('image/gif', 'image/png', 'image/jpeg', 'application/pdf');

    // Максимальный размер файла в килобайтах
    // 1048576; // 1 МБ
    $size = 1073741824; // 1 ГБ

    if ($_SERVER["REQUEST_METHOD"] == "POST") {

    $fileSendStatus = '';
    $textSendStatus = '';
    $msgs = [];

    // Проверяем не пусты ли поля с именем и телефоном
    if (!empty($_POST['username']) && !empty($_POST['usernumber'])) {

        // Если не пустые, то валидируем эти поля и сохраняем и добавляем в тело сообщения. Минимально для теста так:
        $txt = "";

        // Имя
        if (isset($_POST['username']) && !empty($_POST['username'])) {
            $txt .= "Имя пославшего: " . strip_tags(trim(urlencode($_POST['username']))) . "%0A";
        }

        // Номер телефона
        if (isset($_POST['usernumber']) && !empty($_POST['usernumber'])) {
            $txt .= "Телефон: " . strip_tags(trim(urlencode($_POST['usernumber']))) . "%0A";
        }

        if (isset($_POST['city']) && !empty($_POST['city'])) {
            $txt .= "Город: " . strip_tags(trim(urlencode($_POST['city']))) . "%0A";
        }
        // тема сообщения
        if (isset($_POST['theme']) && !empty($_POST['theme'])) {
            $txt .= "Тема: " . strip_tags(urlencode($_POST['theme']));
        }

        $textSendStatus = @file_get_contents('https://api.telegram.org/bot' . TOKEN . '/sendMessage?chat_id=' . CHATID . '&parse_mode=html&text=' . $txt);

        if (isset(json_decode($textSendStatus)->{'ok'}) && json_decode($textSendStatus)->{'ok'}) {
            if (!empty($_FILES['files']['tmp_name'])) {

                $urlFile = "https://api.telegram.org/bot" . TOKEN . "/sendMediaGroup";

                // Путь загрузки файлов
                $path = $_SERVER['DOCUMENT_ROOT'] . '/projectland/tmp/';

                // Загрузка файла и вывод сообщения
                $mediaData = [];
                $postContent = [
                    'chat_id' => CHATID,
                ];

                for ($ct = 0; $ct < count($_FILES['files']['tmp_name']); $ct++) {
                    if ($_FILES['files']['name'][$ct] && @copy($_FILES['files']['tmp_name'][$ct], $path . $_FILES['files']['name'][$ct])) {
                        if ($_FILES['files']['size'][$ct] < $size && in_array($_FILES['files']['type'][$ct], $types)) {
                            $filePath = $path . $_FILES['files']['name'][$ct];
                            $postContent[$_FILES['files']['name'][$ct]] = new CURLFile(realpath($filePath));
                            $mediaData[] = ['type' => 'document', 'media' => 'attach://' . $_FILES['files']['name'][$ct]];
                        }
                    }
                }

                $postContent['media'] = json_encode($mediaData);

                $curl = curl_init();
                curl_setopt($curl, CURLOPT_HTTPHEADER, ["Content-Type:multipart/form-data"]);
                curl_setopt($curl, CURLOPT_URL, $urlFile);
                curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
                curl_setopt($curl, CURLOPT_POSTFIELDS, $postContent);
                $fileSendStatus = curl_exec($curl);
                curl_close($curl);
                $files = glob($path . '*');
                foreach ($files as $file) {
                    if (is_file($file))
                        unlink($file);
                }
            }
            echo json_encode('SUCCESS');
        } else {
            echo json_encode('ERROR');
            //
            // echo json_decode($textSendStatus);
        }
    } else {
        echo json_encode('NOTVALID');
    }
} else {
    header("Location: /");
}

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