Всем привет!
Пытаюсь модернизировать один скрипт по добавлению лидов, найденный в интернете.
Смысл следующий:
Есть некая форма, которая отправляет пользовательские данные в crm, формируя лид. В ней есть стандартные инпуты (имя, телефон, почта) и один скрытый (формирующий название лида).
Я решил немного модернизировать данную форму:
1. При добавлении лид по умолчанию становится доступным для всех (хотя в настройках портала данная опция выключена). Порывшись в документации, я нашёл параметр OPENED, создал ещё одно скрытое поле со значением N в надежде, что теперь новые лиды доступны для всех не будут. Не тут-то было! Они как были доступны для всех, так и остались.
2. Я решил попробовать добавить название компании в форму, чтобы crm автоматически создавала компанию. Нашёл опять же поле COMPANY_ID, добавил в форму, и опять ничего. Но данную проблему я решил немного другим образом - название компании добавил в скрытый инпут, который формирует название лида, далее создал простой бизнес-процесс, который автоматически после добавления нужного лида конвертирует его в контакт+компанию, в итоге из названия лида формируется компания, а из имени, соответственно, контакт. Правда, телефон и почта у них одинаковые, но это полбеды.
В итоге вопрос: как мне всё-таки передать, что лид по умолчанию недоступен для всех?
Код формы:
Код обработчика:
Пытаюсь модернизировать один скрипт по добавлению лидов, найденный в интернете.
Смысл следующий:
Есть некая форма, которая отправляет пользовательские данные в crm, формируя лид. В ней есть стандартные инпуты (имя, телефон, почта) и один скрытый (формирующий название лида).
Я решил немного модернизировать данную форму:
1. При добавлении лид по умолчанию становится доступным для всех (хотя в настройках портала данная опция выключена). Порывшись в документации, я нашёл параметр OPENED, создал ещё одно скрытое поле со значением N в надежде, что теперь новые лиды доступны для всех не будут. Не тут-то было! Они как были доступны для всех, так и остались.
2. Я решил попробовать добавить название компании в форму, чтобы crm автоматически создавала компанию. Нашёл опять же поле COMPANY_ID, добавил в форму, и опять ничего. Но данную проблему я решил немного другим образом - название компании добавил в скрытый инпут, который формирует название лида, далее создал простой бизнес-процесс, который автоматически после добавления нужного лида конвертирует его в контакт+компанию, в итоге из названия лида формируется компания, а из имени, соответственно, контакт. Правда, телефон и почта у них одинаковые, но это полбеды.
В итоге вопрос: как мне всё-таки передать, что лид по умолчанию недоступен для всех?
Код формы:
Код |
---|
<fo rm action="" method="POST"> <input name="name" class="userName" maxlength="50" placeholder="Ваше имя" required=""> <input name="company" class="userName" maxlength="50" placeholder="Название вашей компании" required=""> <input name="phone" type="tel" class="userPhone" maxlength="50" placeholder="Ваш телефон" required=""> <input name="mail" type="email" class="userMail" maxlength="50" placeholder="Ваш E-mail*" required /> <input name="open" type="hidden" value="N" /> // Тут по идее должно передаваться значение, что лид недоступен для всех по умолчанию <input class="send" type="submit" value="ОТПРАВИТЬ" /> </form> |
Код обработчика:
Код |
---|
define('CRM_HOST', 'site.bitrix24.ru'); define('CRM_PORT', '443'); define('CRM_PATH', '/crm/configs/import/lead.php'); define('CRM_LOGIN', 'login'); define('CRM_PASSWORD', 'password'); /********************************************************************************************/ if ($_SERVER['REQUEST_METHOD'] == 'POST'){ // массив передачи данных из формы в crm $postData = array( 'TITLE' => $_POST['company'], 'NAME' => $_POST['name'], 'PHONE_WORK' =>$_POST['phone'], 'EMAIL_WORK' => $_POST['mail'], 'OPENED' => $_POST['open'], ); if (defined('CRM_AUTH')) { $postData['AUTH'] = CRM_AUTH; } else { $postData['LOGIN'] = CRM_LOGIN; $postData['PASSWORD'] = CRM_PASSWORD; } $fp = fsockopen("ssl://".CRM_HOST, CRM_PORT, $errno, $errstr, 30); if ($fp) { $strPostData = ''; foreach ($postData as $key => $value) $strPostData .= ($strPostData == '' ? '' : '&').$key.'='.urlencode($value); $str = "POST ".CRM_PATH." HTTP/1.0\r\n"; $str .= "Host: ".CRM_HOST."\r\n"; $str .= "Content-Type: application/x-www-form-urlencoded\r\n"; $str .= "Content-Length: ".strlen($strPostData)."\r\n"; $str .= "Connection: close\r\n\r\n"; $str .= $strPostData; fwrite($fp, $str ); $result = ''; while (!feof($fp)) { $result .= fgets($fp, 128); } fclose($fp); $response = explode("\r\n\r\n", $result); $output = '<pre>'.print_r($response[1], 1).'</pre>'; } else { echo 'Connection Failed! '.$errstr.' ('.$errno.')'; } } |