Привет всем профессионалам и начинающим!
Проблема: не отсылаются данные на почту. Все сделал, но что-то не работает. Не могу понять что. Прошу помогите.
scripts.js:
это валидатор аякс скрипт.
ajax.php
урезка формы на страничке она большая и все переменные, которые оговорены выше присутствуют:
Но отправки не происходит. Валидатор не выдает Alert событие. Думаю, проблема кроется в скриптe Jquery.
Почтовый шаблон и почтовое событие ORDER созданы и настроены.
Проблема: не отсылаются данные на почту. Все сделал, но что-то не работает. Не могу понять что. Прошу помогите.
scripts.js:
Код |
---|
$(document).ready(function(){ orderForm.validform(); }); var orderForm = { validform: function(){ var errors = false; var regPhone = /^[\(\)\[\]\s\\\/\-0-9\+]{5,250}$/i; var regMail = /^([a-z0-9_\-]+\.)*[a-z0-9_\-]+@([a-z0-9][a-z0-9\-]*[a-z0-9]\.)+[a-z]{2,4}$/i; var highlight = function(type, field){ switch (type) { case 'ok': field.parent("div.input").removeClass("error"); break; case 'err': field.parent("div.input").addClass("error"); errors = true; break; } if(errors){ field.attr({error: 'yes'}); } } // по нажатию submit $("#orderform button:submit").click(function(){ $('[error]').removeAttr('error'); var name = $('#orderform input#form-user-name'); if (name.val().length > 1) { highlight('ok', name); } else { highlight('err', name); } var email = $('#orderform input#form-user-email'); if (regMail.test(email.val())) { highlight('ok', email); } else { highlight('err', email); } var phone = $('#orderform input#form-user-phone'); if (regPhone.test(phone.val())) { highlight('ok', phone); } else { highlight('err', phone); } if (errors) { errors = false; } else { var ord_office = $('#orderform select#ord_office').val(); var ord_hotel = $('#orderform select#ord_hotel').val(); var ord_zaezd_day = $('#orderform select#ord_zaezd_day').val(); var ord_zaezd_month = $('#orderform select#ord_zaezd_month').val(); var ord_zaezd_year = $('#orderform select#ord_zaezd_year').val(); var ord_vyezd_day = $('#orderform select#ord_vyezd_day').val(); var ord_vyezd_month = $('#orderform select#ord_vyezd_month').val(); var ord_vyezd_year = $('#orderform select#ord_vyezd_year').val(); var ord_money_amount = $('#orderform select#ord_money_amount').val(); var ord_money_type = $('#orderform select#ord_money_type').val(); var ord_numpeoples = $('#orderform input#ord_numpeoples').val(); var ord_excursions = $('#orderform select#ord_excursions').val(); var ord_visasupport = $('#orderform select#ord_visasupport').val(); var ord_hotelstars = $('#orderform select#ord_hotelstars').val(); var ord_bilet = $('#orderform select#ord_bilet').val(); var ord_transfer = $('#orderform select#ord_transfer').val(); var ord_comment = $('#orderform textarea#ord_comment').val(); function onAjaxSuccess(data) { alert("Спасибо, Ваш заказ успешно отправлен."); } $.post('/ajax.php', { name:name.val(), email:email.val(), phone:phone.val(), ord_office:ord_office, ord_hotel:ord_hotel, ord_zaezd_day:ord_zaezd_day, ord_zaezd_month:ord_zaezd_month, ord_zaezd_year:ord_zaezd_year, ord_vyezd_day:ord_vyezd_day, ord_vyezd_month:ord_vyezd_month, ord_vyezd_year:ord_vyezd_year, ord_money_amount:ord_money_amount, ord_money_type:ord_money_type, ord_numpeoples:ord_numpeoples, ord_excursions:ord_excursions, ord_visasupport:ord_visasupport, ord_hotelstars:ord_hotelstars, ord_bilet:ord_bilet, ord_transfer:ord_transfer, ord_comment:ord_comment }, onAjaxSuccess); } return false; }); }, } |
это валидатор аякс скрипт.
ajax.php
Код |
---|
<? define("NO_KEEP_STATISTIC", true); define("NOT_CHECK_PERMISSIONS", true); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php"); if($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') { $arSend = array( "NAME" => htmlspecialchars($_POST['name']), "EMAIL" => htmlspecialchars($_POST['email']), "PHONE" => htmlspecialchars($_POST['phone']), "ORD_OFFICE" => htmlspecialchars($_POST['ord_office']), "ORD_HOTEL" => htmlspecialchars($_POST['ord_hotel']), "ORD_ZAEZD_DAY" => htmlspecialchars($_POST['ord_zaezd_day']), "ORD_ZAEZD_MONTH" => htmlspecialchars($_POST['ord_zaezd_month']), "ORD_ZAEZD_YEAR" => htmlspecialchars($_POST['ord_zaezd_year']), "ORD_VYEZD_DAY" => htmlspecialchars($_POST['ord_vyezd_day']), "ORD_VYEZD_MONTH" => htmlspecialchars($_POST['ord_vyezd_month']), "ORD_VYEZD_YEAR" => htmlspecialchars($_POST['ord_vyezd_year']), "ORD_MONEY_AMOUNT" => htmlspecialchars($_POST['ord_money_amount']), "ORD_MONEY_TYPE" => htmlspecialchars($_POST['ord_money_type']), "ORD_NUMPEOPLES" => htmlspecialchars($_POST['ord_numpeoples']), "ORD_EXCURSIONS" => htmlspecialchars($_POST['ord_excursions']), "ORD_VISASUPPORT" => htmlspecialchars($_POST['ord_visasupport']), "ORD_HOTELSTARS" => htmlspecialchars($_POST['ord_hotelstars']), "ORD_BILET" => htmlspecialchars($_POST['ord_bilet']), "ORD_TRANSFER" => htmlspecialchars($_POST['ord_transfer']), "ORD_COMMENT" => htmlspecialchars($_POST['ord_comment']), ); CEvent::Send('ORDER',s1,$arSend); } ?> |
урезка формы на страничке она большая и все переменные, которые оговорены выше присутствуют:
Код |
---|
<form class="form" action="" id="orderform"> <input type="hidden" name="action" value="order_individual"/> <div class="form-row"> <div class="label">Ф.И.О.<span class="style1"><span style="font-weight:bold">*</span></span></div> <div class="input-container"> <input class="input req-string" id="form-user-name" name="ord_fio_org" type="text" /> </div> </div> <div class="form-row"> <div class="label">Контактный телефон<span class="style1"><span style="font-weight:bold">*</span></span></div> <div class="input-container"> <input class="input req-string" id="form-user-phone" name="ord_phone" type="text" /> </div> </div> <div class="form-row"> <div class="label">E-Mail<span class="style1"><span style="font-weight:bold">*</span></span></div> <div class="input-container"> <input class="input req-email" id="form-user-email" name="ord_email" type="text" /> </div> </div> <div class="form-row"> <div class="label">Комментарий к заказу</div> <div class="input-container"> <textarea class="input req-string" id="ord_comment" rows="2" name="ord_comment"></textarea> </div> </div> <input id="submitOrderForm" type="submit" value="Заказать"/> </form> |
Но отправки не происходит. Валидатор не выдает Alert событие. Думаю, проблема кроется в скриптe Jquery.
Почтовый шаблон и почтовое событие ORDER созданы и настроены.