Всем привет! Помогите, пожалуйста, разобраться начинающему разработчику.
Суть задачи - через событие CSubscription прописать добавление нового анонимного подписчика в битрикс при заполнении формы (без регистрации пользователя на сайте).
По аяксу отсылаю методом POST в php файл данные из формы.
Там уже есть событие CEvent::Send , которое в принципе отрабатывает и отправляет письмо. Но при попытке дописать туда событие для внесения подписчика оно не работает - подписчик не добавляется (отправка письма тем не менее работает).
Варианты как я уже пыталась вписать событие:
____________________________________________________________ __
В чем ошибка, почему у меня не срабатывает метод, что я не так делаю?
Подскажите, пожалуйста, кто может?
Суть задачи - через событие CSubscription прописать добавление нового анонимного подписчика в битрикс при заполнении формы (без регистрации пользователя на сайте).
По аяксу отсылаю методом POST в php файл данные из формы.
Там уже есть событие CEvent::Send , которое в принципе отрабатывает и отправляет письмо. Но при попытке дописать туда событие для внесения подписчика оно не работает - подписчик не добавляется (отправка письма тем не менее работает).
Варианты как я уже пыталась вписать событие:
Код |
---|
$arFields2 = Array( "USER_ID" => NULL, "FORMAT" => "html", "EMAIL" => $email, "ACTIVE" => "Y", "RUB_ID" => "2" ); CSubscription::Add($arFields2, SITE_ID); |
____________________________________________________________
Код |
---|
$RUB_ID = array(1,2,3,4) if(!is_array($RUB_ID) || count($RUB_ID) == 0) $strWarning .= "There must be at least one category."."<br>"; if($strWarning == "") { $arFields = Array( "USER_ID" => ($USER->IsAuthorized()? $USER->GetID():false), "FORMAT" => ($FORMAT <> "html"? "text":"html"), "EMAIL" => $email, //переменная емейл задана выше "ACTIVE" => "Y", "RUB_ID" => $RUB_ID ); $subscr = new CSubscription; //can add without authorization $ID = $subscr->Add($arFields); if($ID>0) CSubscription::Authorize($ID); else $strWarning .= "Error adding subscription: ".$subscr->LAST_ERROR."<br>"; } |
Код |
---|
if(!is_array($RUB_ID) || count($RUB_ID) == 0) $strWarning .= "There must be at least one category."."<br>"; if($strWarning == "") { $arFields = Array( "USER_ID" => NULL, "FORMAT" => "html", "EMAIL" => $email, //переменная емейл задана выше "ACTIVE" => "Y", "RUB_ID" => 2 ); $subscr = new CSubscription; //can add without authorization $ID = $subscr->Add($arFields); if($ID>0) CSubscription::Authorize($ID); else $strWarning .= "Error adding subscription: ".$subscr->LAST_ERROR."<br>"; } |
Код |
---|
$arFields = Array( "FORMAT" => "html", "EMAIL" => $email, //переменная емейл задана выше "ACTIVE" => "Y", "RUB_ID" => 2 ); CSubscription::Add($arFields2, SITE_ID); |
В чем ошибка, почему у меня не срабатывает метод, что я не так делаю?
Подскажите, пожалуйста, кто может?