Форма обратной связи в электронном письме. Создание формы обратной связи
Приветствую дорогой читатель, сегодня приготовил для Вас вкусненькую форму обратной связи html, которая работает без перезагрузки страницы по технологии Ajax + мощный триггер, который будет мотивировать ваших посетителей воспользоваться формой. Читатели моего блога очень активно обсуждали мою предыдущую статью по на Landing Page, теперь оцениваем, смотрим на доработанную новую форму. Все необходимые исходники и демо прикрепил в статье , структуру работы и подключению так же разберем.
UPD: Устранена ошибка с кодировкой имени в теме письма. Теперь все отображается верно. Благодарим читательницу (Екатерину Карачеву)
Формат самой формы так же включает файл обработчик на языке php, дополнительно для работы понадобится библиотека jquery и скрипты, но обо всем по порядку, не буду долго грузить — переходим к обзору и разбору нашей обратной связи.
Форма обратной связи html — структура работы
Внешний вид нашей формы выглядит следующим образом
В чем здесь вся соль? Форма так таковая есть с правой стороны, а вот в левой части сделал специальный блок, который будет стимулировать вашего посетителя ввести свои контактные данные немедленно! Секрет прост: Видите дату и время в левом блоке? Дата будет выводиться сегодняшняя все время, со временем диапазон этих двух часов высчитывается от настоящего часа, допустим если у вас сейчас время 13:14 , то диапазоном часов будет: с 12 до 14. Посмотрите на как это работает)))
Посетитель будет видеть: ух ты скидка сегодня, да и по времени я как раз попал вовремя, тут еще и скидка! Надо брать незамедлительно! — Вот это и есть наш триггер.
Исходники формы обратной связи html скачали, демо посмотрели — наигрались думаю)) Теперь о само насущном, принцип работы:
Проверка полей в форме input происходит в файле обработчика contact.php ниже в листинге программного кода сможете посмотреть, сообщение об ошибках и успешной отправке письма появляется в самой форме, вот так это выглядит, после отправки:
Исходный код обработчика формы
Вставьте в строке 52 свою почту, таким образом все письма будут приходить на указанную почту.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 | < 1) { $error .= "Введите ваше сообщение. <".$tel."> ".$error." ";
}
}
?>
|
";
}
// Проверка телефона
function ValidateTel($valueTel)
{
$regexTel = "/^{7,12}$/";
if($valueTel == "") {
return false;
} else {
$string = preg_replace($regexTel, "", $valueTel);
}
return empty($string) ? true: false;
}
if(!$tel)
{
$error .= "Пожалуйста введите телефон.
";
}
if($tel && !ValidateTel($tel))
{
$error .= "Введите корректный телефон.
";
}
if(!$error)
// Проверка сообщения (length)
if(!$message || strlen($message) < 1)
{
$error .= "Введите ваше сообщение.
";// В этой строчке ставиться минимальное ограничение на написание букв.
}
if(!?utf-8?b?". base64_encode($name) ."?=";
$message ="\n\nИмя: ".$name."\n\nНомер телефона: " .$tel."\n\nСообщение: ".$message."\n\n";
$mail = mail("[email protected]", $subject, $message,
"From: ".$name_tema." <".$tel."> "."Reply-To: ".$email." "." X-Mailer: PHP/" . phpversion());
if($mail)
{
echo "OK";
}
}
else
{
echo "
Работоспособность формы
Чтобы приходили письма на ваш почтовый ящик, измените строку о которой я говорил выше. Советую использовать gmail.com почту, на ней задержек и косяков не наблюдается при получении сформированного письма из формы. Предупредил, т.к. много было вопросов у читателей (письма не приходят на mail.ru). Будьте внимательны на этот счет.
Заполняем все поля, обратите внимание, что телефон вводится с 8 — я специально в подсказке так и написал номер с восьмерки «89251122333». При вводе знака «+» появится сообщение об ошибке. Если кому-то нужно, то легко добавить в обработчик данный «+» .
Заполненная форма с тестовыми данными
Письмо на почтовом ящике
Как видите письмо получили, со всеми тремя полями, которые заполняли и отправили. Заголовок письма «Заявка с сайта сайт» меняется в обработчике contact.php
Все работает отлично, будет приятно услышать вашу обратную связь (конструктивную критику) в комментариях, если появились затруднения и с чем-то не справляетесь — смело пишите мне в VK (в контактных данных найдете). Надеюсь вам понравился и дизайн и функционал данного симбиоза формы обратной связи (заказа услуг, заявки) и триггера, призывающего к действию. Всем удачи в работе и позитивного настроя, пока))
Подготовлено при поддержке,
1. Плагин для создания онлайн форм «jFormer»
Создание контактных форм: обратной связи, комментирования, форма входа, форма регистрации с проверкой правильности ввода информации.
2. Пошаговая форма регистрации с использованием jQuery
Аккуратная форма с пошаговым заполнением. Снизу указан индикатор заполнения формы.
3. Пошаговая форма
Заполнение формы в несколько шагов с проверкой правильности заполнения.
4. Контактная форма для сайта
Проверка правильности ввода ифнормации осуществляется «на лету» перед отправкой сообщения с использованием javascript.
5. Анимированное переключение между формами на jQuery
Анимированное переключение с помощью jQuery между формой входа на сайт, формой регистрации и полем для восстановления пароля. На демонстрационной странице нажмите на желтую ссылку для того чтобы увидеть эффект.
6. Выезжающая PHP форма обратной связи
Подобное решение можно использовать для того, чтобы дать посетителю возможность быстро связаться с владельцем сайта с любой страницы. На демонстрационной странице нажмите на стрелочку снизу, чтобы выехала форма.
7. PHP форма регистрации с использованием jQuery и CSS3
Форма с проверкой правильности ввода информации.
8. PHP форма регистрации в стиле Facebook
Симпатичная форма регистрации, реализованная с помощью CSS, PHP и jQuery.
9. jQuery контактная форма «SheepIt»
Реализована возможность перед отправкой сообщения добавлять новые поля.
10. Контактная форма «Fancy AJAX Contact Form»
Симпатичная аккуратная PHP форма обратной связи с проверкой правильности ввода информации. Технологии: CSS, PHP, jQuery.
11. Система авторизации/регистрации на сайте
12. Форма отправки данных
С проверкой правильности заполнения.
13. Плагин jQuery «Contactable»
Для реализации выезжающей формы обратной связи для быстрой отправки сообщения.
14. jQuery плагин «Formwizard»
Плагин для реализации пошаговых форм на сайте.
15. Контактная форма в стиле старой печатной машинки
16. Эффект свечения на jQuery
Одной из наиболее часто встречающихся на практике задач является реализация формы обратной связи. Тобишь написание ее HTML кода, оформление ее на CSS, создание PHP скрипта, который бы обрабатывал полученные от пользователя данные и отправлял их на нашу почту, написание JS скрипта, который бы проверял форму на адекватность вводимых данных, защита нашего детища от спама, чтобы наш почтовый ящик не обвалился от атак ботов.
Все вышеперечисленные моменты будут рассмотрены в нашем обзоре и подробно прокомментированы.
Итак, начинаем создание формы обратной связи:
HTML
В первую очередь мы пишем HTML код, в нем задаются поля, которые будет заполнять пользователь. Они же в дальнейшем будут оформляться. Код формы выглядит следующим образом:
< form method= "post" action= "mail.php" > < div class = "left" > < label for = "name" > Имя: label> < input maxlength= "30" type= "text" name= "name" /> < label for = "phone" > Телефон: label> < input maxlength= "30" type= "text" name= "phone" /> < label for = "mail" > E- mail : label> < input maxlength= "30" type= "text" name= "mail" /> div> < div class = "right" > < label for = "message" > Сообщение: label> < textarea rows= "7" cols= "50" name= "message" > textarea> < input type= "submit" value= "Отправить" /> div> form>
И визуально она выглядит сейчас следующим образом:
Согласен, пока все некрасиво и ничего не понятно, но мы только начали.
Рассмотрим приведенный выше код подробно:
< form method= "post" action= "mail.php" > … form>
для того, чтобы создать форму необходимо использовать тег form. Именно он определяет начало и конец формы для интерпретатора кода. У него, как и у любого тега, есть целый набор атрибутов, но обязательных для работы формы всего два, это method (метод отправки запроса на сервер, для форм стандартно используют post) и action (указывает путь к файлу-обработчику формы, именно в этом файле будет содержаться скрипт на PHP, который после будет отправлять введенные пользователем значения нам на почту, в нашем случае мы видим, что это файл называется mail.php и лежит он в том же директории сайта, что и рассматриваемая нами страница).< input maxlength= "30" type= "text" name= "name" />
Далее у нас следуют инпуты. Это собственно сами поля формы в которые пользователи будут вводить необходимую нам информацию (type="text" говорит о том, что это будет текст). Атрибут maxlength указывает сколько символов может ввести пользователь в данное поле формы. Самый важный атрибут это name – он задает имя конкретного поля. Именно по этим именам в дальнейшем PHP скрипт будет обрабатывать поступающую в него информацию. При желании можно еще задать атрибут placeholder, который выводит внутри поля текст исчезающий при установке курсора внутри нее. Одной из проблем плейсхолдера является то, что он не поддерживается некоторыми старыми браузерами.< label for = "name" > Имя: label>
Используется в случае если мы отказались от плейсхолдеров. Обычная подпись поля, атрибут for сообщает к какому конкретно полю относится данная подпись. Значением указывается name интересующего нас поля.< textarea rows= "7" cols= "50" name= "message" > textarea>
Также как и инпут предназначен для введения пользователем информации, только на этот раз поле заточено для длинных сообщений. Rows указывает размер поля в строках, cols в символах. В целом они задают высоту и ширину нашего поля.< input type= "submit" value= "Отправить" />
О том, что это кнопка для отправки формы нам сообщает type="submit", а value задает текст, который будет внутри этой кнопки.< div class = "right" > div>
использованы только для дальнейшего визуального оформления формы.
CSS
Для того, чтобы наша форма обратной связи выглядела презентабельно ее нужно оформить. Для получения следующего результата:
Мы использовали данный код:
form { background: #f4f5f7; padding: 20px; } form . left, form . right { display: inline- block; vertical- align: top; width: 458px; } form . right { padding- left: 20px; } label { display: block; font- size: 18px; text- align: center; margin: 10px 0px 0px 0px; } input, textarea { border: 1px solid #82858D; padding: 10px; font- size: 16px; width: 436px; } textarea { height: 98px; margin- bottom: 32px; } input[ type= "submit" ] { width: 200px; float: right; border: none; background: #595B5F; color: #fff; text- transform: uppercase; }
Подробно расписывать CSS я не вижу смысла, обращу Ваше внимание лишь на ключевые моменты:
- Не стоит писать оформление под каждый тег в форме. Старайтесь строить свои селекторы так, чтобы парой строк кода оформлять все необходимые Вам элементы.
- Не используйте для переноса строк и создания отступов лишние теги по типу < br>, < p> и тд, с этими задачами прекрасно справляется CSS со свойством display: block и margin с padding. Больше о том, почему не стоит пользоваться < br> в верстке вообще можете почитать в статье Тэг br, а так ли он нужен? .
- Не стоит пользоваться табличной версткой для форм. Это противоречит семантике этого тега, а поисковики любят семантичный код. Для того, чтобы формировать визуальную структуру документа нам достаточно тегов div, и заданных им в CSS свойств display: inline-block (выстраивает блоки в ряд) и vertical-align: top (не дает им разбежаться по экрану), задаем им необходимую высоту и вуаля, ничего лишнего и все расположено так, как нам нужно.
Для желающих экономить свое время на оформлении сайтов могу посоветовать пользоваться CSS фреймворками при создании сайтов, особенно самописных. Мой выбор в этом плане- Twitter Bootstrap . Урок по оформлению форм с его использованием можно посмотреть .
PHP
Ну вот и пришло время сделать нашу форму работоспособной.
Заходим в наш корневой каталог сайта и создаем там файл mail.php, к которому мы ранее указывали путь в атрибуте action тега form.
В конечном итоге его код будет выглядеть следующим образом:
Его номер: " . $phone . "
Его почта: " . $mail . "
Его сообщение: " . $message , ) ; echo "Ваше сообщение успешно отправлено!
Вы получите ответ в ближайшее время
$back " ; exit ; } else { echo ; exit ; } ?>
Обсуждение HTML и CSS части этого документа можно пропустить. По своей сути это обычная страница сайта, которую Вы можете оформить по своему желанию и необходимости. Рассмотрим же важнейшую ее часть – PHP скрипт обработки формы:
$back = "
\" javascript: history.back()\" >Вернуться назад
" ;Этой строкой мы создаем ссылку для возвращения на предыдущую страницу. Поскольку мы заранее не знаем с какой страницы пользователь попадет на эту, то делается это при помощи маленькой JS функции. В дальнейшем мы просто будем обращаться к этой переменной для вывода ее в нужных нам местах.
if (! empty ($_POST [ "name" ] ) and ! empty ($_POST [ "phone" ] ) and ! empty ($_POST [ "mail" ] ) and ! empty ($_POST [ "message" ] ) ) { //внутрення часть обработчика } else { echo "Для отправки сообщения заполните все поля! $back " ; exit ; }
Тут мы прикручиваем проверку формы на наполненность полей. Как вы догадались, в части $_POST["name"] в кавычках мы пишем значение атрибута name наших инпутов.
Если все поля заполнены, то скрипт начнет обрабатывать данные в своей внутренней части, если же хоть одно поле не было заполнено, то на экран пользователя выведется сообщение с требованием заполнить все поля формы echo "Для отправки сообщения заполните все поля! $back" и ссылкой для возврата на предыдущую страницу, которую мы создали самой первой строкой.
Дале вставляем во внутреннюю часть обработчика формы:
$name = trim (strip_tags ($_POST [ "name" ] ) ) ; $phone = trim (strip_tags ($_POST [ "phone" ] ) ) ; $mail = trim (strip_tags ($_POST [ "mail" ] ) ) ; $message = trim (strip_tags ($_POST [ "message" ] ) ) ;
Таким образом мы очистили вводимые пользователем данные от html тегов и лишних пробелов. Это позволяет нам обезопасить себя от получения вредоносного кода в высылаемых нам сообщениях.
Проверки можно и усложнить, но это уже по вашему желанию. Минимальную защиту на серверной стороне мы уже поставили. Дальнейшее мы сделаем на стороне клиента используя JS.
Полностью отказываться от защиты формы на серверной стороне в пользу JS не рекомендую, поскольку хоть и крайне редко, но встречаются уникумы с отключенным в браузере JS.
После чистки тегов добавляем отправку сообщения:
mail
("почта_для_получения_сообщений@gmail.com"
,
"Письмо с адрес_вашего_сайта"
,
"Вам написал: "
.
$name
.
"
Его номер: "
.
$phone
.
"
Его почта: "
.
$mail
.
"
Его сообщение: "
.
$message
,
"Content-type:text/html;charset=windows-1251"
)
;
Именно эта строка и занимается формированием и отправкой сообщения к нам. Заполняется она следующим образом:
- "почта_для_получения_сообщений@gmail.com" – сюда между кавычек вставляете свою почту
- "Письмо с адрес_вашего_сайта" – это тема сообщения, которое будет приходить на почту. Можно написать сюда что угодно.
- "Вам написал: ".$name." < br /> Его номер: ".$phone." < br /> Его почта: ".$mail." < br /> Его сообщение: ".$message – формируем сам текст сообщения. $name – вставляем информацию заполненную пользователем через обращение к полям из предыдущего шага, в кавычках описываем что значит это поле, тегом < br /> делаем перенос строки, чтобы сообщение в целом было читабельно.
- Content-type:text/html;charset=windows-1251 - в конце идет явное указание типа данных передаваемого в сообщении и его кодировки.
ВАЖНО!
Кодировка указанная в «голове» документа ( < meta http- equiv= "Content-Type" content= "text/html; charset=windows-1251" /> ), кодировка из сообщения Content-type:text/html;charset=windows-1251 и в целом кодировка файла PHP должны совпадать иначе в получаемых на почту сообщениях вместо русских или английских букв будут выводиться «кракозябры».
Многие не указывают кодировку отправляемого сообщения явно, но на некоторых почтовых клиентах из-за этого в дальнейшем могут возникнуть проблемы (на почту приходят нечитабельные письма), потому я рекомендую ее все-же указывать.
Проверка формы на адекватность вводимых данных
Чтобы пользователи по невнимательности не промахивались полями и заполняли все корректно стоит поставить проверку вводимых данных.
Это можно сделать как на PHP на стороне сервера, так и на JS на стороне клиента. Я использую второй вариант, поскольку так человек сразу может узнать что он сделал не верно и исправить ошибку не делая дополнительных переходов по страницам.
Код скрипта вставляем в том же файле, где у нас располагается HTML часть формы. Для нашего случая он будет выглядеть так:
< script> function checkForm(form) { var name = form. name. value; var n = name. match(/ ^[ A- Za- zА- Яа- я ] * [ A- Za- zА- Яа- я ] + $/ ) ; if (! n) { alert("Имя введено неверно, пожалуйста исправьте ошибку" ) ; return false ; } var phone = form. phone. value; var p = phone. match(/ ^[ 0 - 9 + ] [ 0 - 9 - ] * [ 0 - 9 - ] + $/ ) ; if (! p) { alert("Телефон введен неверно" ) ; return false ; } var mail = form. mail . value; var m = mail . match(/ ^[ A- Za- z0- 9 ] [ A- Za- z0- 9 \. _- ] * [ A- Za- z0- 9 _] *@ ([ A- Za- z0- 9 ] + ([ A- Za- z0- 9 - ] * [ A- Za- z0- 9 ] + ) * \. ) + [ A- Za- z] + $/ ) ; if (! m) { alert("E-mail введен неверно, пожалуйста исправьте ошибку" ) ; return false ; } return true ; }
Ну а теперь обычный разбор:
Для того, чтобы при нажатии на кнопку отправки формы, у нас происходила ее проверка вешаем запуск нашего скрипта на тег form:
< form method= "post" action= "mail.php" onSubmit= "return checkForm(this)" >
Теперь по пунктам забираем состав проверки:
Как можете заметить такая мини проверка пишется для каждого нашего поля. Проверку на одно поле я выделил на скриншоте красным квадратом, у других полей она имеет аналогичную структуру и если возникнет необходимость добавить поле или убрать его, Вы теперь с легкостью сможете это сделать.
Создание формы обратной связи
Создание формы обратной связи на сайте
В процессе продвижения сайта наряду с изучением статистики посещений, особое значение имеет информация о сайте от самих посетителей. Одним из самых простых способов получения такой информации является размещение на сайте странички с формой обратной связи . Посетитель оставляет сообщение, и оно придет на ваш адрес электронной почты или любой другой, который вы укажете. При этом посетителю не надо использовать свою почтовую программу, ему даже не обязательно иметь свой e-mail.
Простейший пример такой формы приведен на рис.1. (Это вполне рабочий образец, и вы можете с его помощью послать мне благодарственное письмо.)
Рис.1. Простая форма обратной связи
Для размещения на сайте такой формы обратной связи достаточно всего лишь элементарных сведений об HTML и умения оперировать двумя командами - Копировать и Вставить. Рассмотрим последовательность действий по созданию формы обратной связи (рис.1) на HTML-странице сайта.
1. Проверьте, что тарифный план вашего хостинга (контора, где размещён ваш сайт) поддерживает PHP. Если нет, то вам придётся скорее всего доплатить для перехода на другой тариф, поддерживающий эту самую PHP. Значение этой аббревиатуры можете не искать, так как знание PHP вам не понадобится.
2. Выберем страницу, на которой хотим разместить форму обратной связи, и вставим в нужное место следующий код:Как видим, вся форма создаётся тегом с атрибутами action=mail.php (указание на страницу сайта, где расположен сценарий обработки введенных данных) и method=post (метод отправки данных на сервер). Отдельные строки созданы тегом с вполне понятными атрибутами. Расположение отдельных элементов формы, текст, шрифты и проч. можете менять в соответствие с дизайном вашего сайта. В теге задаются размеры области для ввода текста сообщения: число строк и колонок (rows="3" cols="25").
3. Создадим новую страницу mail.php , аналогичную обычной HTML, только имеющую расширение.php. Полный код страницы показан на рис.2:
if (isset($_POST["name"])) {$name = $_POST["name"];}
if (isset($_POST["email"])) {$email = $_POST["email"];}
if (isset($_POST["mess"])) {$mess = $_POST["mess"];}
$to = "pupkin@rambler.ru
"; /*Укажите ваш адрес электоронной почты*/
$headers = "Content-type: text/plain; charset = windows-1251";
$subject = "Сообщение с вашего сайта";
$message = "Имя пославшего: $name \nЭлектронный адрес: $email \nСообщение: $mess";
$send = mail ($to, $subject, $message, $headers);
if ($send == "true")
{
echo "Спасибо за отправку вашего сообщения!
";
echo "
Нажмите, чтобы вернуться на главную страницу";
}
else
{
echo "
Ошибка. Сообщение не отправлено!";
}
?>
Рис.2. Код страницы обработки формы обратной связи
Красным цветом выделены адреса ссылок, на которые необходимо обратить внимание:
- pupkin@rambler.ru
- адрес г.Пупкина заменить на адрес вашей почты, куда будут поступать сообщения от посетителей сайта, а также от неутомимых спамеров. Кстати, для защиты от них в форму часто вводят так называемую капчу (англ. CAPTCHA
- Completely Automated Public Turing test to tell Computers and Humans Apart - полностью автоматизированный публичный тест Тьюринга для различия компьютеров и людей). Обычно это сильно искаженные цифры и буквы, которые просят ввести перед отправкой сообщения. О капче поговорим в одной из следующих статей.
Если вы хотите отправлять письма на несколько адресов, то просто перечислите их через запятую. - a href=index.html - адрес главной (домашней) страницы сайта.
Созданную страницу mail.php необходимо поместить в тот же каталог сайта (директорию, папку), где расположена и страница с формой обратной связи.
Проверьте работоспособность формы обратной связи. Если всё сделано аккуратно, то после заполнения формы и нажатия Отправить сообщение должен появиться следующий текст: "Спасибо за отправку вашего сообщения. , чтобы вернуться на главную страницу ". После этого вы обнаружите в своём почтовом ящике (или другом, который вы указали при создании формы обратной связи) собственное послание себе любимому.
Замечание: на некоторых хостингах новая (только что установленная на сайте) форма обратной связи начинает работать не сразу, и первые письма не доходят совсем или поступают с задержкой на 1-2 дня. Вероятно, идет "притирка шестеренок", а затем все работает нормально. Кроме того, с некоторых хостингов не доходят письма на определенные адреса, например, у меня были проблемы с ящиком на Рамблере и Mail.ru. Для решения этих проблем обратитесь к вашему хостеру - обычно помогают.
Иногда при использовании описанной формы обратной связи возникают проблемы с кодировкой. Если в пришедшем письме вместо родной кириллицы текст состоит из "кракозяблов" или пустых квадратиков, то приходится вручную подбирать кодировку, что конечно же неудобно. Чтобы этого не происходило, проверьте, что ваша страница с формой обратной связи имеет кодировку charset=UTF-8 . Если вы используете программу Adobe Dreamweaver , то для этого надо выбрать раздел меню Изменить - Свойства страницы - Кодировка .
Подробнее проблема с кодировкой файлов сайта рассмотрена в статье Проблемы с кодировкой в форме обратной связи .
В описанном примере для простоты сообщение об отправке письма выводится на пустой странице. Конечно, вы можете разместить его на любой странице своего сайта, чтобы посетитель мог использовать навигацию (меню) для выбора дальнейших действий. Для этого поместите РНР-код (то, что расположено от <?php до ?> ) в нужное место страницы с меню и измените её название на mail.php.
Кроме размещения самой формы обратной связи, желательно проверять правильность заполнения её полей посетителем. Это необходимо делать для того, чтобы вам не приходили пустые письма и ваш почтовый ящик не забивался хламом, отсылаемым шутниками, любящими просто понажимать кнопку Отправить сообщение . О методах проверки заполнения формы обратной связи и защиты от спама рассказано в статьях "
Управление сайтом во многих случаях включает в себя взаимодействие с его посетителями в рамках механизмов обратной связи. Представлены они могут быть в разных вариантах. Например, в виде формы обратной связи. В каких разновидностях она может быть представлена? Каковы особенности внедрения соответствующей формы в структуру сайта?
Что представляет собой форма обратной связи на сайте?
Форма, о которой идет речь, представляет собой интерфейс, который предназначен для передачи администраторам сайта различных сообщений от посетителей. Данная форма может быть удобной альтернативой использованию электронного адреса, а в некоторых случаях — диалоговым интерфейсам в формате чата. Задействовав ее, пользователь может быть уверен, что его сообщение дойдет до адресата и не попадет, таким образом, в спам, и при этом у него нет необходимости использовать сторонние программы для работы с почтовым ящиком.
Обратная связь для сайта (HTML-формата или, например, в виде скриптов PHP либо написанных на другом языке программирования) может быть настроена так, чтобы посетитель онлайнового ресурса смог отразить в сообщении суть своего вопроса, а также указать собственные персональные и контактные данные. Изучим то, посредством каких механизмов могут быть реализованы интерфейсы взаимодействия администраторов сайта и его посетителей.
Способы организации обратной связи на сайте
Запустить сервис обратной связи для сайта можно разными способами. В числе самых распространенных:
Использование бесплатных онлайновых сервисов, генерирующих специальный HTML-код для формы обратной связи;
Использование сервисов, предоставляющих соответствующие HTML-коды, а также скрипты PHP, необходимые для обеспечения функционирования формы обратной связи;
Использование готовых скриптов и их встраивание в HTML-код страниц на сайте.
Первые 2 способа могут подойти пользователям, не имеющим большого опыта в области веб-разработки. В свою очередь, 3-й метод во многих случаях более всего подходит специалистам, которые смогут корректно встроить соответствующий сервис обратной связи для сайта в структуру веб-страниц. Но это очень условные зависимости. Вполне может быть и так, что пользование сервером для генерации HTML-кода на практике окажется более сложной процедурой, чем загрузка готового PHP-скрипта.Рассмотрим то, каким образом указанные возможности могут задействоваться на практике.
Форма обратной связи на сайте как PHP-скрипт
Если пользователю предпочтителен вариант, при котором будет использоваться готовая форма обратной связи для сайта в виде PHP-скрипта, то загрузить ее можно, к примеру, со специализированного сайта script.landman.ru. Основные возможности соответствующих скриптов следующие:
Отправка сообщений пользователями сайта;
Фильтрация спама;
Возможность использовать скрипты в целях заказа тех или иных товаров и услуг.
В состав скриптов, предлагаемых командой разработчиков указанного сайта, входят:
PHP-скрипт, предназначенный для обработки сообщений от посетителей сайта;
Набор специальных шрифтов для антиспама.
Таким образом, в данном комплекте присутствует все необходимое для организации простой, и в то же время функциональной и надежной формы обратной связи. Можно отметить, что она достаточно оперативно может быть проинсталлирована и неподготовленным пользователем. Готовая форма обратной связи для сайта от landman.ru бесплатна, но при условии, что владелец портала, использующий ее, сохранит копирайты разработчиков.
Для того чтобы инсталлировать рассматриваемый скрипт, нужно, прежде всего, проверить файл config.php на предмет корректности адреса e-mail администратора сайта, на который будут приходить сообщения от пользователей. Кроме того, в файле Robots.txt следует прописать ограничение индексации папки с используемыми файлами, которая должна быть скопирована в корневой каталог сервера.
Формы без применения PHP
Форма обратной связи для сайта может быть инсталлирована на веб-страницы без применения скриптов PHP либо файлов, сформированных при задействовании какого-либо другого языка программирования, применение которых на конкретном сервере может быть затруднено либо предполагает использование дополнительных ресурсов, которые могут отсутствовать в распоряжении владельца сайта.
В данном случае речь идет как раз таки о генерации специального HTML-кода. Можно использовать тот, что предлагается разработчиками сервиса main-ip.ru/genform. Необходимо перейти по соответствующему адресу, после — ввести необходимые параметры в форму. Затем можно сгенерировать и скопировать код, после чего разместить его на той или иной странице администрируемого сайта.
Решить задачу — как на сайте сделать форму обратной связи, многие современные веб-дизайнеры предпочитают решать именно с задействованием сервиса main-ip.ru/genform, прежде всего, по той причине, что она позволяет осуществить настройку соответствующей формы по многим важнейшим параметрам. Таким как:
Ширина формы;
Наименование поля, в котором вводится имя пользователя, обращающегося к администрации сайта посредством механизма обратной связи;
Наименование поля указания электронного адреса пользователя;
Параметры различных дополнительных полей (в них могут быть указаны, к примеру, альтернативные способы связи с пользователем — в виде Skype или иного мессенджера);
Название текстового поля, предназначенного непосредственно для ввода сообщения.
Кроме того, используя страницу генерации HTML-кода для формы обратной связи, можно настроить:
Высоту блока с заголовком формы, его цвета — в HTML-кодировке;
Цвет текста, фиксируемого в заголовке, а также в форме сообщения;
Высоту текстовых областей, предназначенных для ввода сообщения, а также персональных данных пользователя;
Размер шрифта используемой формы.
Таким образом, сервис main-ip.ru/genform — в числе самых удобных для пользователей, которым нужна обратная связь для сайта. HTML-код, который генерируется сервисом, очень легко интегрируется в структуру веб-страниц. Главное — после инсталляции данного кода проверить корректность работы соответствующей формы.
Бесплатная обратная связь для сайта может быть организована посредством инструментов, которые имеются в составе популярных оболочек для управления онлайновыми порталами. Такими как, например, Joomla.
Форма обратной связи в Joomla
Интерфейсы для настройки обратной связи в данной системе управления проектами находятся в разделе «Контакты». Как отмечают специалисты, соответствующая форма, несмотря на простоту, имеет достаточную функциональность для того, чтобы обеспечить стабильную взаимосвязь между посетителями сайта и его администраторами.
Как сделать обратную связь на сайте с помощью Joomla? Прежде всего нужно войти в главную панель данной системы, после чего выбрать опцию «Контакты». На открывшейся страницы необходимо создать новую категорию данных. Для этого нужно заполнить несколько полей - «Заголовок», а также «Псевдоним». После необходимо отразить в системе тот факт, что соответствующий контакт публикуется. Затем нужно сохранить настройки в системе.
После того как требуемая категория создана, необходимо сформировать веб-страницу, на которой будет расположена форма обратной связи для сайта. Для решения данной задачи вновь необходимо выбрать опцию «Контакты», после чего кликнуть на кнопке «Новый». Затем нужно заполнить необходимые сведения в открывшемся окне, после — отразить тот факт, что данные публикуются. Настройки, опять же, требуется сохранить.
Обратная связь в Joomla: встраивание формы в структуру сайта
Как только все необходимые процедуры будут осуществлены, то форму обратной связи можно будет размещать на сайте. В этих целях нужно войти в административную панель, после чего выбрать опцию «Меню» и установить место, в котором будет отражаться форма обратной связи. В соответствующем пункте меню необходимо создать новую опцию — ту, что связана с настройками области «Контакты».
После этого должна открыться страница, на которой пользователю необходимо зафиксировать наименование пункта меню, а также указать контакты, которые будут ему соответствовать. Введенные настройки нужно будет сохранить. После этого система обратной связи для сайта под управлением Joomla будет доступна пользователям в разделе «Контакты» администрируемого сайта.
Еще одна популярная платформа для работы с онлайновыми порталами — WordPress. Рассмотрим то, как сделать обратную связь на сайте с применением тех инструментов, которые она включает.
Форма обратной связи на WordPress
Рассматриваемая система управления онлайновыми порталами предполагает задействование в целях решения задачи, о которой идет речь, специальных плагинов. В частности, для организации формы обратной связи может использоваться скрипт Contact Form Plugin (его особенности мы изучим чуть позже). Обычно он доступен в меню главной панели управления WordPress в разделе «Плагины».
Необходимо, выбрав соответствующий скрипт, активировать его. После чего выбрать вкладку «Контакты», а затем скопировать код используемого плагина. После этого необходимо выбрать вкладку «Страницы» и выбрать опцию «Добавить новую». Затем вставить в соответствующее поле ранее скопированный код. При необходимости можно настроить внешний вид страницы с контактными данными. Как только она будет подготовлена, то соответствующую страницу можно опубликовать.
Установка плагинов от WordPress, даже если та или иная их разновидность представляет собой довольно простой код (обратная связь для сайта может организовываться в целях решения разных задач), во многих случаях характеризуется особенностями, на которые полезно обратить внимание. Изучим их в контексте функционала распространенных плагинов, которые доступны в соответствующей системе управления онлайновыми порталами.
Настройка обратной связи на WordPress: нюансы
Использование сервиса WordPress в целях организации обратной связи может быть осуществлено, таким образом, с применением нескольких плагинов. Рассмотрим их. Выше мы отметили, что формы обратной связи, которые можно инсталлировать в структуру сайта на WordPress, могут быть основаны на Contact Form Plugin. Кроме него, в распоряжении пользователя рассматриваемой системы управления онлайновыми порталами находятся такие интерфейсы, как:
SimpleModal — всплывающая форма обратной связи для сайта;
Usernoise — очень быстрый плагин с плавающей кнопкой, при нажатии на которую открывается форма для ввода сообщения;
Contact Form в версии 7.
Первый плагин из соответствующего перечня приспособлен к проверке корректности его заполнения. Второй позволяет выбрать тип запроса, который может быть представлен сообщением пользователя, вопросом или же пожеланием. Третий имеет функцию выбора конкретных получателей сообщения — например, одного или нескольких пользователей, которые зарегистрированы на сайте.
Изучим для примера то, как сделать обратную связь на сайте с применением плагина Contact Form в версии 7.
Настройка формы обратной связи на WordPress: плагин Contact Form 7
Для того чтобы задействовать возможности рассматриваемого плагина в целях решения задачи, о которой идет речь, нужно войти в панель управления WordPress, выбрать опцию «Плагины», после чего кликнуть на кнопке «Добавить новый».
В соответствующем интерфейсе будет доступна форма, посредством которого можно осуществить поиск требуемых скриптов: в нее следует ввести наименование плагина. Ссылка на установку соответствующего расширения должна будет отобразиться в результатах поиска.
Рассматриваемый плагин нужно установить и дождаться сообщения о его успешной инсталляции. Также соответствующее расширение необходимо активировать. После этого в пунктах меню, расположенном в левой части экрана браузера, появится опция Contact Form 7. Если навести на него курсор, то откроется дополнительное меню, в котором необходимо выбрать пункт «Добавить новую». Это нужно для создания нового интерфейса, в структуре которого будет присутствовать форма. Необходимо кликнуть на кнопке, которая называется так же как и пункт - «Добавить новую».
В открывшемся окне необходимо настроить необходимые опции для требуемой формы. Как сделать обратную связь на сайте с учетом особенностей настройки соответствующего интерфейса? Прежде всего, полезно уделить внимание выбору заголовка формы: он может звучать как «Связь с администрацией» или «Написать владельцу сайта».
После этого можно настроить внешний вид формы. В этих целях можно задействовать шаблон, предлагаемый системой по умолчанию. В принципе, это простейшая форма обратной связи для сайта. В ней фиксируются имя обращающегося, его адрес, тема сообщения, а также непосредственно текст обращения к администрации сайта. При необходимости можно расширить функционал соответствующего шаблона. В этих целях можно активировать дополнительные теги с помощью сопутствующих пунктов меню.
Добавление созданной с помощью плагина Contact Form 7 форму обратной связи осуществляется так же, как и в случае с любым другим интерфейсом из числа предлагаемых разработчиками WordPress. Можно проверить то, насколько корректно работает новая форма обратной связи, отправив тестовое сообщение. Оно должно быть направлено на e-mail владельца сайта, который указывается при настройке параметров плагина.
Резюме
Итак, мы изучили то, как на сайте сделать форму обратной связи. Данная задача может быть решена при задействовании скриптов PHP (либо составленных на другом языке программирования), применения сгенерированного кода HTML или при использовании интерфейсов систем управления онлайновыми проектами — таких как Joomla или, к примеру, WordPress.
Выбор конкретного механизма создания формы обратной связи может зависеть от масштабов сайта, интенсивности предполагаемого общения его администрации с посетителями, структуры соответствующего портала, содержания его контента. Так или иначе, можно выбрать формат соответствующего интерфейса, который смогут использовать с учетом особенностей конкретного онлайнового проекта как начинающие пользователи, так и опытные веб-разработчики.