Перейти к содержимому


форма ввода с капчей на статической странице


  • Вы не можете ответить в тему
В этой теме нет ответов

#1 badisoft

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 5075 сообщений
Репутация: 786
Мастер

Отправлено 04 August 2015 - 07:50 PM

Дополнение позволяет на статической странице (которые создаются в "менеджере страниц") заполнить форму, ввести штатную капчу и отправить заполненные данные на главный email сайта. В данном случае это некие параметры человека/конторы для обратной связи, но никто вам не мешает отредактировать форму под свои нужды.

Прикрепленный файл  1.JPG   117.84К   16 Количество загрузок:

Установка:
----------

1. копируем файлы

static.php -> /core/includes/processor/
static_notification.tpl.html -> /core/email/
jquery.form.js -> /data/


2. если не подключена библиотека jquery - подключаем.


3. в файле index.php находим строку с вхождением "do" и добавлям туда "static"


4. вставляем в нужное место статической страницы (корректируя HTML и JS код под себя, а также не забыв нажать на "Источник")


<!-- BEGIN форма ввода -->
<div align="center">
<div id="staticResult"></div>
<form action="" method="post" name="staticForm" id="staticForm">
<table>
<tr>
<td>Город<span class="error">*</span>:<br><input tabindex="1" type="text" name="city" id="city" value="" style="width:250px;"></td>
<td>Название компании:<br><input tabindex="4" type="text" name="company" id="company" value="" style="width:250px;"></td>
</tr>
<tr>
<td>ФИО<span class="error">*</span>:<br><input tabindex="2" type="text" name="fio" id="fio" value="" style="width:250px;"></td>
<td>Должность:<br><input tabindex="5" type="text" name="func" id="func" value="" style="width:250px;"></td>
</tr>
<tr>
<td>Телефон<span class="error">*</span>:<br><input tabindex="3" type="text" name="tel" id="tel" value="" style="width:250px;" placeholder="+7 (XXX) XXX-XX-XX"></td>
<td>Email:<br><input tabindex="6" type="text" name="email" id="email" value="" style="width:250px;"></td>
</tr>
<tr>
<td colspan="2">Комментарий:<br><textarea tabindex="7" name="comment" rows="5" style="width: 510px;"></textarea></td>
</tr>
<tr><td style="height: 6px;"></td></tr>
<tr>
<td align="right"><input tabindex="8" type="text" name="captcha" id="captcha" value="" style="width: 50px;"></td>
<td id="captcha_pic"><img src="index.php?do=captcha" alt="code"></td>
</tr>
<tr><td style="height: 6px;"></td></tr>
<tr>
<td colspan="2" align="center"><input tabindex="9" type="button" value="Отправить" onclick="staticSubmit();"></td>
</tr>
</table>
</form>
</div>

<script type="text/javascript" src="/data/jquery.form.js"></script>
<script type="text/javascript">

function staticSubmit()
{
var staticOptions = {target:"#staticResult",url:"index.php?do=static"};
var border_true = 'green solid 1px';

if ($('#city').val().trim() !== '') $('#city').css('border',border_true);
if ($('#fio').val().trim() !== '') $('#fio').css('border',border_true);
if ($('#tel').val().trim() !== '') $('#tel').css('border',border_true);
if ($('#company').val().trim() !== '') $('#company').css('border',border_true);
if ($('#func').val().trim() !== '') $('#func').css('border',border_true);
if ($('#email').val().trim() !== '') $('#email').css('border',border_true);
// if ($('#comment').val().trim() !== '') $('#comment').css('border',border_true);
if ($('#captcha').val().trim() !== '') $('#captcha').css('border',border_true);

if ($('#city').val().trim() === '') {not_filled('city','Город');return false;}
if ($('#fio').val().trim() === '') {not_filled('fio','ФИО');return false;}
if ($('#tel').val().trim() === '') {not_filled('tel','Телефон');return false;}
if ($('#captcha').val().trim() === '') {not_filled('captcha','Защитный код');return false;}

$('#staticResult').html('<br><span style="color:black">Отсылаем сообщение...</span><br><br>');
$('#staticForm').ajaxSubmit(staticOptions);
$('#captcha_pic').html('<img src="index.php?do=captcha&amp;rand='+Math.random()+'" alt="code">');
return false;
}

function not_filled(id,name)
{
var border_false = 'solid red 1px';
$('#'+id).css('border',border_false);
$('#'+id).focus();
$('#staticResult').html('<br><span style="color:red">Не заполнено поле &quot;'+name+'&quot;!</span><br><br>');
}

</script>
<!-- END форма ввода -->

Прикрепленные файлы

  • Прикрепленный файл  static.zip   8.76К   4 Количество загрузок:

  • 0
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)