Насамперед слід підключити бібліотеку JQuery:
А взагалі, краще завантажити бібліотеку на свій сервер, і підключати до нього, т. к. доводилося стикатися з тим, що сторінки довго «висять», тому що бібліотека з якихось причин іноді передається з гальмами зі стороннього ресурсу.
Форма проста, оформлення залишається за вами:
Введіть вашу email адресу:
З формою так само працюємо по-простому:
$(document).ready(function(){
$(‘input[name=”send”]’).click(function(){
$.getJSON(‘ajax.php’, {
email:$(‘input[name=”email”]’).val()
}, function(data){
if (data.status==’ok’){
alert(‘На вашу поштову адресу відправлено листа з підтвердженням підписки.’);
} else {
alert(data.msg);
}
});
});
});
Отже, у нас є форма, є код javascript, який і буде здійснювати відправлення e-mail на сервер, і приймати відповідь від сервера. Тепер подивимося, що у нас буде на стороні сервера, скрипт який ми назвемо ajax.php власне і обробляти запити, форми, і віддавати відповідь у форматі Json.
“ASC”,”SORT”=>”ASC”,”NAME”=>”ASC”),
array(“ACTIVE”=>”Y”, “LID”=>LANG)
);
$arRubIDS = array();
while ($arRub = $rub->Fetch()){
$arRubIDS[] = $arRub[‘ID’];
}
// формуємо масив з полями для створення підписки
$arFields = Array(
“USER_ID” => ($USER->IsAuthorized() ? $USER->GetID() : false),
“FORMAT” => “html”,
“EMAIL” => $_REQUEST[’email’],
“ACTIVE” => “N”,
“RUB_ID” => $arRubIDS,
“SEND_CONFIRM” => ‘Y’
);
$subscr = new CSubscription;
// створюємо підписку
$ID = $subscr->Add($arFields);
if ($ID > 0){
$arResult[‘status’] = ‘ok’;
} else {
$arResult[‘status’] = ‘error’;
$arResult[‘msg’] = str_replace(“
“,””,$subscr->LAST_ERROR);
}
} else $arResult[‘status’] = ‘error’;
echo json_encode($arResult);
?>
Зверніть увагу, параметр “SEND_CONFIRM” => ‘Y’ при додаванні підписки означає, що підписка повинна бути підтверджена по Email. Якщо в цьому немає необхідності досить змінити значення параметра на «N».
Додав: htmaker, 07.05.2015 р.
Діліться з друзями:
См. також:
Налаштування часу у VMBitrix
Рубрика: Bitrix, Linux
Видалення «кинутих» кошиків в системі Бітрікс
Рубрика: Bitrix
Використання highload-блоків в Bitrix
Рубрика: Bitrix
Як виконати SQL запит в Bitrix
Рубрика: Bitrix
Як підрахувати кількість елементів в Bitrix?
Рубрика: Bitrix
Динамічне масштабування зображень в Bitrix
Рубрика: Bitrix
Виключаємо користувача з ID=1 групи адміністраторів в Bitrix
Рубрика: Bitrix
Як скинути пароль адміністратора у Bitrix?
Рубрика: Bitrix
SQL-запити в бітрікс
Рубрика: Bitrix
Коментарі
01.12.2015 в 09:21
А взагалі, краще завантажити бібліотеку на свій сервер, і підключати до нього…
зате якщо користувач вже завантажував на іншому сайті дану бибилиотеку, що скоріше всього, т. к. для цього все і вказують джерелом google, то бибилиотека викликається з пам’яті ще швидше
Відповісти
29.06.2016 в 19:26
а куди файл ajax.php класти?
Відповісти
30.06.2016 в 10:03
У прикладі він розміщується в корені, шлях до файлу-скрипту змінюється в рядку: $.getJSON(‘ajax.php’
Відповісти