[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: PHP формы обратной связи + AmoCRM
Maxim_Goncharov
Добрый день коллеги. Прошу помощи в таком деле как интеграция с AmoCRM, но средствами скрипта и кода сбора переменных форм обратной связи.

Итак по порядку.

1. Имеется сайт на PHP ( без движка, было вырезано откуда то разработчиком, найти его к сожалению нет возможности).

2. Система AmoCRM которая получает данные из наших форм.

3. Есть формы работающие через ajax. ( выполнены таким образом что обработчик этих форм написан в action и type, но сами формы по отдельности выведены в отдельные case.

4. Существует скрипт от сторонней компании которая помогает с интеграцией в AmoCRM и переменные которые она пропуская через свое ядро отправляет в по конечный пункт.

Подключение этого скрипта выполняется следующими способами.

1. Вставляется на каждую страницу перед тегом /body скрипт с ключом.

2. В файле обработчика формы подключается файлик со скриптом куда отправлять данные методом POST либо кодом из этого файлика методом вставки в каждую форму.

Вопрос следующий, как бы я не вставлял и не редактировал данный код по отправке, ничего не выходит. Либо я просто тупой ( сильно помидорами не кидать, я админ а не WEB программер

Вообщем вопрос такой, как правильно настроить код чтобы этот код правильно брал переменные и вкладывал в массив передающий методом POST. Ужо голову сломал.



код скрипта на каждую страницу ( ее я вставил в шаблон формирования страниц он динамический. )

<script type="text/javascript">
(function(d, w, k) {
w.introvert_callback = function() {
try {
w.II = new IntrovertIntegration(k);
} catch (e) {console.log(e)}
}
;

var n = d.getElementsByTagName("script")[0],
e = d.createElement("script");

e.type = "text/javascript";
e.async = true;
e.src = "https://api.yadrocrm.ru/js/cache/"+ k +".js";
n.parentNode.insertBefore(e, n);
})(document, window, '03d91470');
</script>


Далее вот этот код из файлика

<?php
//Загрузка данных в amoCRM (by INTROVERT)

$intr_key = '03d91470';
$introvertUrl = 'https://api.yadrocrm.ru/integration/site?key='. $intr_key;

$cookieData = json_decode($_COOKIE['introvert_cookie'], true) ?: array(); // данные сохраняемые js скриптом
$postArr = array_merge($cookieData, $_POST); // $_POST данные отправленной формы

// объединяем данные и отправляем


if (function_exists('curl_init')) {
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $introvertUrl);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($postArr));
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_USERAGENT, 'Yadro-Site-Integration-client/1.0');
$result = curl_exec($curl);
curl_close($curl);
} else {
if ((boolean) ini_get('allow_url_fopen')) {
$opts = array('http' =>
array(
'method' => 'POST',
'header' => 'Content-type: application/x-www-form-urlencoded',
'content' => http_build_query($postArr),
'timeout' => 2,
)
);


try {
file_get_contents($introvertUrl, false, stream_context_create($opts));
} catch (Exception $e) {
return;
}
}
}
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.