Files
erv-clientright/server_new.php

78 lines
3.4 KiB
PHP
Raw Normal View History

2026-03-13 10:42:01 +03:00
<?php
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST, OPTIONS');
header('Access-Control-Allow-Headers: origin, Content-Type, X-Requested-With, XMLHttpRequest');
// Логируем начало работы
$start_time = microtime(true);
$log_file = "logs/logfile.log";
error_log("Скрипт начался в: " . date("Y-m-d H:i:s") . "\n", 3, $log_file);
try {
// Получаем данные из POST
$upload_urls = $_POST['upload_urls'];
$upload_urls_real = $_POST['upload_urls_real'];
$files_names = $_POST['files_names'];
$appends = $_POST['appends'];
$sub_dir = $_POST['sub_dir'] ?? '';
$lastname = str_replace(' ', '', $_POST['lastname']);
// Подготовка данных для CRM
$new_post = array(
'__vtrftk' => 'sid:ec649134ad232e44c3ad71bbd321cee986f05545,1688385374',
'publicid' => '3ddc71c2d79ef101c09b0d4e9c6bd08b',
'urlencodeenable' => '1',
'name' => 'websiteticket',
);
foreach ($appends as $key => $itemjson) {
$item = json_decode($itemjson);
$new_post[$item->crm_name] = $item->field_val;
}
// Логируем данные для CRM
error_log("Данные для отправки в CRM: " . json_encode($new_post, JSON_UNESCAPED_UNICODE) . "\n", 3, $log_file);
// Отправляем данные в CRM
$curl_connection = curl_init('https://crm.clientright.ru/modules/Webforms/capture.php');
curl_setopt($curl_connection, CURLOPT_POST, 1);
curl_setopt($curl_connection, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl_connection, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl_connection, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl_connection, CURLOPT_HTTPHEADER, array('Content-Type: multipart/form-data'));
curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $new_post);
$crm_response = curl_exec($curl_connection);
curl_close($curl_connection);
// Логируем ответ от CRM
error_log("Ответ от CRM: " . $crm_response . "\n", 3, $log_file);
// Формируем данные для отправки почты и запускаем отдельный процесс для отправки
$email_data = array(
'to' => 'help@clientright.ru',
'subject' => 'Новая заявка с сайта',
'body' => 'Данные заявки: ' . json_encode($new_post, JSON_UNESCAPED_UNICODE),
'attachments' => $upload_urls
);
// Сохраняем данные для скрипта отправки почты
$email_file = 'logs/email_data.json';
file_put_contents($email_file, json_encode($email_data, JSON_UNESCAPED_UNICODE));
// Запускаем отправку почты в фоновом режиме
exec('php send_email.php > /dev/null 2>/dev/null &');
// Быстро завершаем скрипт
echo json_encode(['status' => 'success', 'crm_response' => $crm_response]);
} catch (Exception $e) {
error_log("Ошибка: " . $e->getMessage() . "\n", 3, $log_file);
echo json_encode(['status' => 'error', 'message' => $e->getMessage()]);
}
// Время завершения работы скрипта
$end_time = microtime(true);
$execution_time = $end_time - $start_time;
error_log("Время выполнения скрипта: " . $execution_time . " секунд\n", 3, $log_file);
?>